CatapultServer  v0.5.0.1 (Elephant)
MosaicCacheView.h
Go to the documentation of this file.
1 
21 #pragma once
22 #include "MosaicBaseSets.h"
23 #include "MosaicCacheSerializers.h"
27 
28 namespace catapult { namespace cache {
29 
31  struct MosaicCacheViewMixins : public PatriciaTreeCacheMixins<MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor> {};
32 
35  : public utils::MoveOnly
42  public:
44 
45  public:
48  : MosaicCacheViewMixins::Size(mosaicSets.Primary)
49  , MosaicCacheViewMixins::Contains(mosaicSets.Primary)
50  , MosaicCacheViewMixins::Iteration(mosaicSets.Primary)
51  , MosaicCacheViewMixins::ConstAccessor(mosaicSets.Primary)
52  , MosaicCacheViewMixins::PatriciaTreeView(mosaicSets.PatriciaTree.get())
53  , MosaicCacheViewMixins::ActivePredicate(mosaicSets.Primary)
54  {}
55  };
56 
58  class MosaicCacheView : public ReadOnlyViewSupplier<BasicMosaicCacheView> {
59  public:
61  explicit MosaicCacheView(const MosaicCacheTypes::BaseSets& mosaicSets) : ReadOnlyViewSupplier(mosaicSets)
62  {}
63  };
64 }}
catapult::cache::MosaicBaseSets
Definition: MosaicBaseSets.h:47
catapult::cache::BasicCacheMixins< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor >::Size
SizeMixin< MosaicCacheTypes::PrimaryTypes::BaseSetType > Size
Definition: CacheMixinAliases.h:31
catapult::cache::PatriciaTreeCacheMixins< MosaicCacheTypes::PrimaryTypes::BaseSetDeltaType, MosaicCacheDescriptor >::PatriciaTreeView
PatriciaTreeMixin< typename MosaicCacheDescriptor ::PatriciaTree > PatriciaTreeView
Definition: CacheMixinAliases.h:53
catapult::cache::ReadOnlyViewSupplier
Decorates a view and supplies a read-only view.
Definition: ReadOnlyViewSupplier.h:28
ReadOnlyViewSupplier.h
catapult::cache::MosaicCacheTypes::CacheReadOnlyType
ReadOnlyArtifactCache< BasicMosaicCacheView, BasicMosaicCacheDelta, MosaicId, state::MosaicEntry > CacheReadOnlyType
Definition: MosaicCacheTypes.h:76
catapult::cache::ReadOnlyArtifactCache
A read-only overlay on top of a cache that provides support for contains, get and isActive.
Definition: MosaicCacheTypes.h:42
ReadOnlyArtifactCache.h
catapult::cache::BasicMosaicCacheView::BasicMosaicCacheView
BasicMosaicCacheView(const MosaicCacheTypes::BaseSets &mosaicSets)
Creates a view around mosaicSets.
Definition: MosaicCacheView.h:47
catapult::cache::PatriciaTreeCacheMixins
Grouping of all basic and patricia tree cache mixins for a single set.
Definition: CacheMixinAliases.h:52
catapult::cache::BasicCacheMixins< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor >::Contains
ContainsMixin< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor > Contains
Definition: CacheMixinAliases.h:32
catapult::cache::MosaicCacheViewMixins
Mixins used by the mosaic cache view.
Definition: MosaicCacheView.h:31
catapult::cache::BasicCacheMixins< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor >::Iteration
IterationMixin< MosaicCacheTypes::PrimaryTypes::BaseSetType > Iteration
Definition: CacheMixinAliases.h:33
catapult::cache::BasicCacheMixins< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor >::ConstAccessor
ConstAccessorMixin< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor > ConstAccessor
Definition: CacheMixinAliases.h:35
catapult::cache::BasicMosaicCacheView
Basic view on top of the mosaic cache.
Definition: MosaicCacheView.h:34
MosaicBaseSets.h
catapult::utils::MoveOnly
A class that can be moved but not copied.
Definition: NonCopyable.h:43
CacheMixinAliases.h
MosaicCacheSerializers.h
catapult
Definition: AddressExtractionExtension.cpp:28
catapult::cache::MosaicCacheView::MosaicCacheView
MosaicCacheView(const MosaicCacheTypes::BaseSets &mosaicSets)
Creates a view around mosaicSets.
Definition: MosaicCacheView.h:61
catapult::cache::BasicCacheMixins< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor >::ActivePredicate
ActivePredicateMixin< MosaicCacheTypes::PrimaryTypes::BaseSetType, MosaicCacheDescriptor > ActivePredicate
Definition: CacheMixinAliases.h:44
catapult::cache::MosaicCacheView
View on top of the mosaic cache.
Definition: MosaicCacheView.h:58