List of all members | Classes | Public Member Functions | Protected Attributes
utl::Cache< AResult, Functor, AArgument > Class Template Reference

#include <Cache.h>

Classes

struct  Node
 

Public Member Functions

 Cache ()
 
 Cache (const Functor *const functorPtr, const unsigned int maxSize)
 
 Cache (const Cache &other)
 
AResult operator() (const AArgument &arg)
 
Cacheoperator= (const Cache &other)
 
void Reset ()
 
 ~Cache ()
 

Protected Attributes

boost::shared_ptr< const Functor > fFunctorPtr
 
unsigned int fMaxSize = 0
 
NodefRoot = nullptr
 
unsigned int fSize = 0
 

Detailed Description

template<typename AResult, class Functor, typename AArgument>
class utl::Cache< AResult, Functor, AArgument >

Definition at line 10 of file Cache.h.

Constructor & Destructor Documentation

template<typename AResult , class Functor , typename AArgument >
utl::Cache< AResult, Functor, AArgument >::Cache ( )
inline

Definition at line 12 of file Cache.h.

template<typename AResult , class Functor , typename AArgument >
utl::Cache< AResult, Functor, AArgument >::Cache ( const Functor *const  functorPtr,
const unsigned int  maxSize 
)
inline

Definition at line 14 of file Cache.h.

template<typename AResult , class Functor , typename AArgument >
utl::Cache< AResult, Functor, AArgument >::Cache ( const Cache< AResult, Functor, AArgument > &  other)
inline

Definition at line 17 of file Cache.h.

template<typename AResult , class Functor , typename AArgument >
utl::Cache< AResult, Functor, AArgument >::~Cache ( )
inline

Definition at line 31 of file Cache.h.

References utl::Cache< AResult, Functor, AArgument >::Reset().

Member Function Documentation

template<typename AResult , class Functor , typename AArgument >
AResult utl::Cache< AResult, Functor, AArgument >::operator() ( const AArgument &  arg)
inline
template<typename AResult , class Functor , typename AArgument >
Cache& utl::Cache< AResult, Functor, AArgument >::operator= ( const Cache< AResult, Functor, AArgument > &  other)
inline
template<typename AResult , class Functor , typename AArgument >
void utl::Cache< AResult, Functor, AArgument >::Reset ( )
inline

Member Data Documentation

template<typename AResult , class Functor , typename AArgument >
boost::shared_ptr<const Functor> utl::Cache< AResult, Functor, AArgument >::fFunctorPtr
protected
template<typename AResult , class Functor , typename AArgument >
unsigned int utl::Cache< AResult, Functor, AArgument >::fMaxSize = 0
protected
template<typename AResult , class Functor , typename AArgument >
Node* utl::Cache< AResult, Functor, AArgument >::fRoot = nullptr
protected
template<typename AResult , class Functor , typename AArgument >
unsigned int utl::Cache< AResult, Functor, AArgument >::fSize = 0
protected

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

, generated on Tue Sep 26 2023.