From 1eb5ab4ad0f83bd579e572c08db1991d71a474fc Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Mon, 14 May 2012 14:06:15 -0700 Subject: [PATCH] Constants for ledger timing. --- src/Ledger.cpp | 5 +++-- src/LedgerTiming.h | 28 ++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 src/LedgerTiming.h diff --git a/src/Ledger.cpp b/src/Ledger.cpp index 7e058d6bc2..d5269a806d 100644 --- a/src/Ledger.cpp +++ b/src/Ledger.cpp @@ -15,9 +15,10 @@ #include "BitcoinUtil.h" #include "Wallet.h" #include "BinaryFormats.h" +#include "LedgerTiming.h" Ledger::Ledger(const NewcoinAddress& masterID, uint64 startAmount) : mTotCoins(startAmount), - mCloseTime(0), mLedgerSeq(0), mLedgerInterval(60), mClosed(false), mValidHash(false), + mCloseTime(0), mLedgerSeq(0), mLedgerInterval(LEDGER_INTERVAL), mClosed(false), mValidHash(false), mAccepted(false), mImmutable(false) { mTransactionMap = boost::make_shared(); @@ -37,7 +38,7 @@ Ledger::Ledger(const NewcoinAddress& masterID, uint64 startAmount) : mTotCoins(s Ledger::Ledger(const uint256 &parentHash, const uint256 &transHash, const uint256 &accountHash, uint64 totCoins, uint64 timeStamp, uint32 ledgerSeq) : mParentHash(parentHash), mTransHash(transHash), mAccountHash(accountHash), - mTotCoins(totCoins), mCloseTime(timeStamp), mLedgerSeq(ledgerSeq), mLedgerInterval(60), + mTotCoins(totCoins), mCloseTime(timeStamp), mLedgerSeq(ledgerSeq), mLedgerInterval(LEDGER_INTERVAL), mClosed(false), mValidHash(false), mAccepted(false), mImmutable(false) { updateHash(); diff --git a/src/LedgerTiming.h b/src/LedgerTiming.h new file mode 100644 index 0000000000..50ef49fa80 --- /dev/null +++ b/src/LedgerTiming.h @@ -0,0 +1,28 @@ +#ifndef __LEDGERTIMING__ +#define __LEDGERTIMING__ + +#define LEDGER_CLOSE_FAST +// #define LEDGER_CLOSE_SLOW + +#ifdef LEDGER_CLOSE_FAST + +// Time between one ledger close and the next ledger close +# define LEDGER_INTERVAL 60 + +// Time we expect avalanche to finish +# define LEDGER_CONVERGE 20 + +#endif + +#ifdef LEDGER_CLOSE_SLOW + +# define LEDGER_INTERVAL 1800 + +# define LEDGER_CONVERGE 180 + +// Time a transaction must be unconflicted before we consider it protected +# define LEDGER_PROTECT 90 + +#endif + +#endif