CatapultServer  v0.5.0.1 (Elephant)
MultiBlockLoader.h
Go to the documentation of this file.
1 
21 #pragma once
24 #include <functional>
25 
26 namespace catapult {
27  namespace extensions { struct LocalNodeStateRef; }
28  namespace model {
29  struct Block;
30  struct BlockChainConfiguration;
31  }
32  namespace plugins { class PluginManager; }
33 }
34 
35 namespace catapult { namespace local {
36 
39 
42  std::function<std::unique_ptr<const observers::NotificationObserver> (const model::Block&)>;
43 
48  const model::Block& lastBlock,
49  const model::BlockChainConfiguration& config,
50  const NotificationObserverFactory& transientObserverFactory,
51  const NotificationObserverFactory& permanentObserverFactory);
52 
56  const BlockDependentNotificationObserverFactory& observerFactory,
57  const plugins::PluginManager& pluginManager,
58  const extensions::LocalNodeStateRef& stateRef,
59  Height startHeight);
60 }}
Block.h
Log_Interval_Millis
static constexpr auto Log_Interval_Millis
Definition: MultiBlockLoader.cpp:84
catapult::model::CalculateTransactionCacheDuration
utils::TimeSpan CalculateTransactionCacheDuration(const BlockChainConfiguration &config)
Calculates the duration of time that expired transactions should be cached for the block chain descri...
Definition: BlockChainConfiguration.cpp:120
catapult::model::BlockChainConfiguration
Block chain configuration settings.
Definition: BlockChainConfiguration.h:33
BlockChainConfiguration.h
catapult::predicate
std::function< bool(TArgs...)> predicate
A predicate function.
Definition: functions.h:31
catapult::Height
utils::BaseValue< uint64_t, Height_tag > Height
Definition: src/catapult/types.h:85
NotificationObserverAdapter.h
ObserverTypes.h
catapult::extensions::LocalNodeStateRef
A reference to a local node's basic state.
Definition: LocalNodeStateRef.h:34
catapult::plugins::PluginManager
A manager for registering plugins.
Definition: PluginManager.h:51
catapult::local::LoadBlockChain
model::ChainScore LoadBlockChain(const BlockDependentNotificationObserverFactory &observerFactory, const plugins::PluginManager &pluginManager, const extensions::LocalNodeStateRef &stateRef, Height startHeight)
Definition: MultiBlockLoader.cpp:178
catapult::supplier
std::function< T()> supplier
A (stateless) supplier function.
Definition: functions.h:39
Elements.h
catapult::utils::BaseValue
Immutable wrapper for basic types, to provide some type-safety.
Definition: BaseValue.h:100
catapult::model::ChainScore
Definition: ChainScore.h:30
m_inflectionHeight
Height m_inflectionHeight
Definition: MultiBlockLoader.cpp:62
MultiBlockLoader.h
BlockExecutor.h
m_inflectionTime
Timestamp m_inflectionTime
Definition: MultiBlockLoader.cpp:61
catapult::local::NotificationObserverFactory
supplier< std::unique_ptr< const observers::NotificationObserver > > NotificationObserverFactory
A notification observer factory.
Definition: MultiBlockLoader.h:38
BlockScorer.h
ChainScore.h
StackLogger.h
CatapultCache.h
LocalNodeStateRef.h
catapult::model::AccountRestrictionType::Block
Account restriction is interpreted as blocking operation.
ReadOnlyCatapultCache.h
catapult::model::Block
Binary layout for a block.
Definition: Block.h:69
PluginManager.h
catapult::Timestamp
utils::BaseValue< uint64_t, Timestamp_tag > Timestamp
Definition: src/catapult/types.h:73
catapult::local::CreateBlockDependentNotificationObserverFactory
BlockDependentNotificationObserverFactory CreateBlockDependentNotificationObserverFactory(const model::Block &lastBlock, const model::BlockChainConfiguration &config, const NotificationObserverFactory &transientObserverFactory, const NotificationObserverFactory &permanentObserverFactory)
Definition: MultiBlockLoader.cpp:66
catapult
Definition: AddressExtractionExtension.cpp:28
catapult::local::BlockDependentNotificationObserverFactory
std::function< std::unique_ptr< const observers::NotificationObserver >(const model::Block &)> BlockDependentNotificationObserverFactory
A block dependent notification observer factory.
Definition: MultiBlockLoader.h:42
BlockStorageCache.h