Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

EVENT::LCGenericObject Class Reference

#include <LCGenericObject.h>

Inheritance diagram for EVENT::LCGenericObject:

EVENT::LCObject lcrtrel::LCRTRelations IMPL::LCGenericObjectImpl IOIMPL::LCGenericObjectIOImpl List of all members.

Public Types

typedef LCGenericObject lcobject_type

Public Member Functions

virtual ~LCGenericObject ()
 Destructor.
virtual int getNInt () const =0
virtual int getNFloat () const =0
virtual int getNDouble () const =0
virtual int getIntVal (int index) const =0
virtual float getFloatVal (int index) const =0
virtual double getDoubleVal (int index) const =0
virtual bool isFixedSize () const =0
virtual const std::string getTypeName () const =0
virtual const std::string getDataDescription () const =0
virtual int id () const
virtual LCObjectclone () const
template<class V>
V::ext_type ext ()
template<class V>
V::rel_type rel ()

Protected Member Functions

template<class V>
V::ptr & ptr ()

Detailed Description

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

Author:
gaede
Version:
Id
LCGenericObject.aid,v 1.7 2006/08/04 16:52:44 gaede Exp

Definition at line 27 of file LCGenericObject.h.


Member Typedef Documentation

typedef LCGenericObject EVENT::LCGenericObject::lcobject_type
 

Useful typedef for template programming with LCIO

Definition at line 35 of file LCGenericObject.h.


Constructor & Destructor Documentation

virtual EVENT::LCGenericObject::~LCGenericObject  )  [inline, virtual]
 

Destructor.

Definition at line 31 of file LCGenericObject.h.


Member Function Documentation

virtual LCObject* EVENT::LCObject::clone  )  const [inline, virtual, inherited]
 

Deep copy of the object. C++ implementations should return the concrete type (virtual constructor). No reasonable implementation yet. Do not use this method.

Reimplemented in IMPL::SimCalorimeterHitImpl.

Definition at line 52 of file LCObject.h.

template<class V>
V::ext_type lcrtrel::LCRTRelations::ext  )  [inline, inherited]
 

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,...

Definition at line 430 of file LCRTRelations.h.

virtual const std::string EVENT::LCGenericObject::getDataDescription  )  const [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 IMPL::LCGenericObjectImpl.

Referenced by SIO::SIOLCGenericObjectHandler::init().

virtual double EVENT::LCGenericObject::getDoubleVal int  index  )  const [pure virtual]
 

Returns the double value for the given index.

Implemented in IMPL::LCGenericObjectImpl.

Referenced by UTIL::LCTOOLS::printLCGenericObjects(), and SIO::SIOLCGenericObjectHandler::write().

virtual float EVENT::LCGenericObject::getFloatVal int  index  )  const [pure virtual]
 

Returns the float value for the given index.

Implemented in IMPL::LCGenericObjectImpl.

Referenced by UTIL::LCTOOLS::printLCGenericObjects(), and SIO::SIOLCGenericObjectHandler::write().

virtual int EVENT::LCGenericObject::getIntVal int  index  )  const [pure virtual]
 

Returns the integer value for the given index.

Implemented in IMPL::LCGenericObjectImpl.

Referenced by UTIL::LCTOOLS::printLCGenericObjects(), and SIO::SIOLCGenericObjectHandler::write().

virtual int EVENT::LCGenericObject::getNDouble  )  const [pure virtual]
 

Number of double values stored in this object.

Implemented in IMPL::LCGenericObjectImpl.

Referenced by SIO::SIOLCGenericObjectHandler::init(), UTIL::LCTOOLS::printLCGenericObjects(), and SIO::SIOLCGenericObjectHandler::write().

virtual int EVENT::LCGenericObject::getNFloat  )  const [pure virtual]
 

Number of float values stored in this object.

Implemented in IMPL::LCGenericObjectImpl.

Referenced by SIO::SIOLCGenericObjectHandler::init(), UTIL::LCTOOLS::printLCGenericObjects(), and SIO::SIOLCGenericObjectHandler::write().

virtual int EVENT::LCGenericObject::getNInt  )  const [pure virtual]
 

Number of integer values stored in this object.

Implemented in IMPL::LCGenericObjectImpl.

Referenced by SIO::SIOLCGenericObjectHandler::init(), UTIL::LCTOOLS::printLCGenericObjects(), and SIO::SIOLCGenericObjectHandler::write().

virtual const std::string EVENT::LCGenericObject::getTypeName  )  const [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 IMPL::LCGenericObjectImpl.

Referenced by SIO::SIOLCGenericObjectHandler::init().

virtual int EVENT::LCGenericObject::id  )  const [inline, virtual]
 

Provide default implementation for id

Implements EVENT::LCObject.

Reimplemented in IMPL::LCGenericObjectImpl.

Definition at line 83 of file LCGenericObject.h.

Referenced by UTIL::LCTOOLS::printLCGenericObjects().

virtual bool EVENT::LCGenericObject::isFixedSize  )  const [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 IMPL::LCGenericObjectImpl.

Referenced by SIO::SIOLCGenericObjectHandler::init().

template<class V>
V::ptr& lcrtrel::LCRTRelations::ptr  )  [inline, protected, inherited]
 

Returns the reference to the pointer to the extension/relation object

Definition at line 508 of file LCRTRelations.h.

template<class V>
V::rel_type lcrtrel::LCRTRelations::rel  )  [inline, inherited]
 

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.

Definition at line 444 of file LCRTRelations.h.


The documentation for this class was generated from the following file:
Generated on Sun Jun 3 06:32:24 2007 for A TPC Tracking Environment by  doxygen 1.3.9.1