CatapultServer  v0.5.0.1 (Elephant)
catapult::cache::SingleCacheChangesT< TCacheDelta, TValue > Class Template Reference

Provides common view of single sub cache changes. More...

Inheritance diagram for catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >:
Collaboration diagram for catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >:

Public Member Functions

 SingleCacheChangesT (const TCacheDelta &cacheDelta)
 Creates changes around cacheDelta. More...
 
 SingleCacheChangesT (const MemoryCacheChangesT< TValue > &memoryCacheChanges)
 Creates changes around memoryCacheChanges. More...
 
PointerContainer addedElements () const
 Gets pointers to all added elements. More...
 
PointerContainer modifiedElements () const
 Gets pointers to all modified elements. More...
 
PointerContainer removedElements () const
 Gets pointers to all removed elements. More...
 
- Public Member Functions inherited from catapult::utils::NonCopyable
constexpr NonCopyable ()=default
 Default constructor. More...
 
 ~NonCopyable ()=default
 Default destructor. More...
 
 NonCopyable (const NonCopyable &)=delete
 Disabled copy constructor. More...
 
NonCopyableoperator= (const NonCopyable &)=delete
 Disabled assignment operator. More...
 

Private Types

using PointerContainer = std::unordered_set< const TValue * >
 

Static Private Member Functions

static PointerContainer CollectAllPointers (const std::vector< TValue > &values)
 

Private Attributes

const TCacheDelta * m_pCacheDelta
 
const MemoryCacheChangesT< TValue > * m_pMemoryCacheChanges
 

Detailed Description

template<typename TCacheDelta, typename TValue>
class catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >

Provides common view of single sub cache changes.

Member Typedef Documentation

◆ PointerContainer

template<typename TCacheDelta, typename TValue>
using catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::PointerContainer = std::unordered_set<const TValue*>
private

Constructor & Destructor Documentation

◆ SingleCacheChangesT() [1/2]

template<typename TCacheDelta, typename TValue>
catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::SingleCacheChangesT ( const TCacheDelta &  cacheDelta)
inlineexplicit

Creates changes around cacheDelta.

◆ SingleCacheChangesT() [2/2]

template<typename TCacheDelta, typename TValue>
catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::SingleCacheChangesT ( const MemoryCacheChangesT< TValue > &  memoryCacheChanges)
inlineexplicit

Creates changes around memoryCacheChanges.

Member Function Documentation

◆ addedElements()

template<typename TCacheDelta, typename TValue>
PointerContainer catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::addedElements ( ) const
inline

Gets pointers to all added elements.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CollectAllPointers()

template<typename TCacheDelta, typename TValue>
static PointerContainer catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::CollectAllPointers ( const std::vector< TValue > &  values)
inlinestaticprivate
Here is the caller graph for this function:

◆ modifiedElements()

template<typename TCacheDelta, typename TValue>
PointerContainer catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::modifiedElements ( ) const
inline

Gets pointers to all modified elements.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removedElements()

template<typename TCacheDelta, typename TValue>
PointerContainer catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::removedElements ( ) const
inline

Gets pointers to all removed elements.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_pCacheDelta

template<typename TCacheDelta, typename TValue>
const TCacheDelta* catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::m_pCacheDelta
private

◆ m_pMemoryCacheChanges

template<typename TCacheDelta, typename TValue>
const MemoryCacheChangesT<TValue>* catapult::cache::SingleCacheChangesT< TCacheDelta, TValue >::m_pMemoryCacheChanges
private

The documentation for this class was generated from the following file: