LCFIPlus  0.6.5
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
lcfiplus::EventStore Class Reference

A simple named storage for event data. More...

#include <EventStore.h>

Inheritance diagram for lcfiplus::EventStore:
lcfiplus::Event

Classes

struct  StoredEntry
 

Public Types

enum  { DO_NOT_DELETE = 0x0001, PERSIST = 0x0002, JET_WRITE_VERTEX = 0x1000 }
 

Public Member Functions

void RegisterObserver (EventStoreObserver *observer)
 
void UnregisterObserver (EventStoreObserver *observer)
 
int Count (const char *name) const
 
bool IsExist (const char *name) const
 
bool IsExist (const char *name, const char *classname) const
 
const char * GetClassName (const char *name, int idx=0) const
 
void * GetObject (const char *name, const char *classname="") const
 
template<typename T >
bool Get (const char *name, const vector< const T * > *&buf) const
 
template<typename T >
bool Get (const char *name, const vector< T * > *&buf) const
 
template<typename T >
bool Get (const char *name, const vector< T > *&buf) const
 
template<typename T >
bool Get (const char *name, const T *&buf) const
 
void * RegisterObject (const char *name, const char *classname, int flags=0)
 
template<typename T >
bool Register (const char *name, vector< T * > *&buf, int flags=0)
 
template<typename T >
bool Register (const char *name, vector< T > *&buf, int flags=0)
 
template<typename T >
bool Register (const char *name, T *&buf, int flags=0)
 
void Print () const
 
void ClearObjects ()
 
virtual ~EventStore ()
 
const multimap< string,
lcfiplus::EventStore::StoredEntry > & 
GetObjectMap () const
 

Protected Member Functions

void *const & GetObjectRef (const char *name, const char *classname="") const
 
 EventStore ()
 

Detailed Description

A simple named storage for event data.

To obtain data: use Get(name) (in compiled code) or GetObject(name) (in CINT)

CAUTION: GetObject() does not have type-check.

To register data: use Register(name) or RegisterObject(name, class) Use a pointer returned (cannot register a pointer from the caller). Any classes or vector of classes with ClassDef() can be registered.

Author
T. Suehara, ICEPP, The University of Tokyo
Version
$Id$

Member Enumeration Documentation

anonymous enum
Enumerator
DO_NOT_DELETE 
PERSIST 
JET_WRITE_VERTEX 

Constructor & Destructor Documentation

lcfiplus::EventStore::~EventStore ( )
virtual
lcfiplus::EventStore::EventStore ( )
protected

Member Function Documentation

void lcfiplus::EventStore::ClearObjects ( )
int lcfiplus::EventStore::Count ( const char *  name) const
template<typename T >
bool lcfiplus::EventStore::Get ( const char *  name,
const vector< const T * > *&  buf 
) const
template<typename T >
bool lcfiplus::EventStore::Get ( const char *  name,
const vector< T * > *&  buf 
) const
template<typename T >
bool lcfiplus::EventStore::Get ( const char *  name,
const vector< T > *&  buf 
) const
template<typename T >
bool lcfiplus::EventStore::Get ( const char *  name,
const T *&  buf 
) const
const char * lcfiplus::EventStore::GetClassName ( const char *  name,
int  idx = 0 
) const
void * lcfiplus::EventStore::GetObject ( const char *  name,
const char *  classname = "" 
) const
const multimap<string, lcfiplus::EventStore::StoredEntry >& lcfiplus::EventStore::GetObjectMap ( ) const
inline
void *const & lcfiplus::EventStore::GetObjectRef ( const char *  name,
const char *  classname = "" 
) const
protected
bool lcfiplus::EventStore::IsExist ( const char *  name) const
inline
bool lcfiplus::EventStore::IsExist ( const char *  name,
const char *  classname 
) const
void lcfiplus::EventStore::Print ( ) const
template<typename T >
bool lcfiplus::EventStore::Register ( const char *  name,
vector< T * > *&  buf,
int  flags = 0 
)
template<typename T >
bool lcfiplus::EventStore::Register ( const char *  name,
vector< T > *&  buf,
int  flags = 0 
)
template<typename T >
bool lcfiplus::EventStore::Register ( const char *  name,
T *&  buf,
int  flags = 0 
)
void * lcfiplus::EventStore::RegisterObject ( const char *  name,
const char *  classname,
int  flags = 0 
)
void lcfiplus::EventStore::RegisterObserver ( EventStoreObserver observer)
inline
void lcfiplus::EventStore::UnregisterObserver ( EventStoreObserver observer)
inline

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