|
LCIO
02.17
|
Simple interface to store generic user data. More...
#include <LCGenericObject.h>
Inheritance diagram for EVENT::LCGenericObject:Public Types | |
| typedef LCGenericObject | lcobject_type |
| Useful typedef for template programming with LCIO. More... | |
Public Types inherited from lcrtrel::LCRTRelations | |
| typedef std::type_index | ext_index |
| typedef std::shared_ptr< void > | ext_type |
| typedef std::map< ext_index, ext_type > | ext_map |
Public Member Functions | |
| virtual | ~LCGenericObject () |
| Destructor. More... | |
| virtual int | getNInt () const =0 |
| Number of integer values stored in this object. More... | |
| virtual int | getNFloat () const =0 |
| Number of float values stored in this object. More... | |
| virtual int | getNDouble () const =0 |
| Number of double values stored in this object. More... | |
| virtual int | getIntVal (int index) const =0 |
| Returns the integer value for the given index. More... | |
| virtual float | getFloatVal (int index) const =0 |
| Returns the float value for the given index. More... | |
| virtual double | getDoubleVal (int index) const =0 |
| Returns the double value for the given index. More... | |
| virtual bool | isFixedSize () const =0 |
| True if objects of the implementation class have a fixed size, i.e getNInt, getNFloat and getNDouble will return values that are constant during the lifetime of the object. More... | |
| virtual const std::string | getTypeName () const =0 |
| The type name of the user class (typically the class name) This type name is stored as a collection parameter "TypeName" with every collection of LCGenericObject subclasses. More... | |
| virtual const std::string | getDataDescription () const =0 |
| The description string. More... | |
| virtual int | id () const |
| Provide default implementation for id. More... | |
Public Member Functions inherited from EVENT::LCObject | |
| virtual | ~LCObject () |
| Destructor. More... | |
| virtual LCObject * | clone () const |
| Returns an object id for internal (debugging) use in LCIO. More... | |
Public Member Functions inherited from lcrtrel::LCRTRelations | |
| template<class V > | |
| V::ext_type | ext () |
| Provides access to an extension object - the type and ownership is defined by the class V which should be a subtype of LCExtension, LCOwnedExtension, LCExtensionVector, LCExtensionList,... More... | |
| template<class V > | |
| const V::ext_type | ext () const |
| Provides access to an extension object - the type and ownership is defined by the class V which should be a subtype of LCExtension, LCOwnedExtension, LCExtensionVector, LCExtensionList,... More... | |
| template<class V > | |
| V::rel_type | rel () |
| Provides read access to relations - the object types and their connectivity are defined by the class V which has to be a subtype of either LC1To1Relation, LC1ToNRelation or LCNToNRelation. More... | |
Simple interface to store generic user data.
To store your own classes they have to implement this interface.
2005-02-11, gaede: Changed the return value of getTypeName() and getDataDescription() from const std::string& to const std::string to make the implementation easier
Definition at line 27 of file LCGenericObject.h.
Useful typedef for template programming with LCIO.
Definition at line 35 of file LCGenericObject.h.
|
inlinevirtual |
Destructor.
Definition at line 31 of file LCGenericObject.h.
|
pure virtual |
The description string.
A comma separated list of pairs of type identifier, one of 'i','f','d' followed by ':' and an attribute name, e.g. "i:cellId,f:offset,f:gain".
Implemented in UTIL::EventSummary, IMPL::LCGenericObjectImpl, and CalibrationConstant.
Referenced by UTIL::operator<<().
|
pure virtual |
Returns the double value for the given index.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Referenced by UTIL::operator<<().
|
pure virtual |
Returns the float value for the given index.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Referenced by UTIL::operator<<().
|
pure virtual |
Returns the integer value for the given index.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Referenced by UTIL::operator<<().
|
pure virtual |
Number of double values stored in this object.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Referenced by UTIL::operator<<().
|
pure virtual |
Number of float values stored in this object.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Referenced by UTIL::operator<<().
|
pure virtual |
Number of integer values stored in this object.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Referenced by UTIL::operator<<().
|
pure virtual |
The type name of the user class (typically the class name) This type name is stored as a collection parameter "TypeName" with every collection of LCGenericObject subclasses.
Implemented in UTIL::EventSummary, IMPL::LCGenericObjectImpl, and CalibrationConstant.
Referenced by UTIL::operator<<().
|
inlinevirtual |
Provide default implementation for id.
Implements EVENT::LCObject.
Reimplemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
Definition at line 83 of file LCGenericObject.h.
Referenced by UTIL::operator<<().
|
pure virtual |
True if objects of the implementation class have a fixed size, i.e getNInt, getNFloat and getNDouble will return values that are constant during the lifetime of the object.
Implemented in UTIL::LCFixedObject< NINT, NFLOAT, NDOUBLE >, UTIL::LCFixedObject< int(ESI::SIZE), int(ESF::SIZE), int(ESD::SIZE)>, and IMPL::LCGenericObjectImpl.
1.8.5