10 #ifndef EVENTDATACACHE_H_ 11 #define EVENTDATACACHE_H_ 15 #include <unordered_map> 53 bool BookObject(
const std::string &objName,
unsigned int sizeHint = 1000);
79 bool Unbook(
const std::string &objName =
"");
114 bool Clean(
const std::string &objName =
"");
131 using Cache = std::vector<ObjectWrapper>;
136 ObjCache(
unsigned int sizeHint) : booked(true) { cache.reserve(sizeHint); }
bool CacheValues()
Caches the value of the booked objects for the current event.
Definition: EventDataCache.cpp:38
bool BookObject(const std::string &objName, unsigned int sizeHint=1000)
Books an object for caching.
Definition: EventDataCache.cpp:26
A cache for event data object.
Definition: EventDataCache.h:30
bool SetCurrentEvent(unsigned int event)
Sets the current event.
Definition: EventDataCache.cpp:77
bool Clean(const std::string &objName="")
Cleans the cache of the given object.
Definition: EventDataCache.cpp:99
std::unordered_map< std::string, ObjCache > ObjCacheMap
Definition: EventDataCache.h:139
Definition: EventDataCache.h:133
bool Unbook(const std::string &objName="")
Unbooks the given object.
Definition: EventDataCache.cpp:60
RetrievalResult
Definition: RetrievalResult.h:16
IncludeFileExc.h IncludeFileExc class declaration.
Definition: Algorithm.h:21
std::vector< ObjectWrapper > Cache
Definition: EventDataCache.h:131
RetrievalResult GetCachedValue(const std::string &objName, ObjectWrapper &wrapper)
Retrieves the cached value for the given object.
Definition: EventDataCache.cpp:82
EventDataStore & _evStore
Definition: EventDataCache.h:123
Cache cache
Definition: EventDataCache.h:135
Generic wrapper class.
Definition: ObjectWrapper.h:28
Definition: DataStore.h:422
ObjCacheMap _cacheMap
Definition: EventDataCache.h:140
unsigned int _currEv
Definition: EventDataCache.h:124
ObjCache(unsigned int sizeHint)
Definition: EventDataCache.h:136
std::string GetStoreName()
Returns the name of the event store to which the cache is attached.
Definition: EventDataCache.cpp:112
bool booked
Definition: EventDataCache.h:134
EventDataCache(EventDataStore &evStore)
Constructor.
Definition: EventDataCache.cpp:18