A single weighted relationship between two LCObjects. More...
#include <pre-generated/EVENT/LCRelation.h>
Public Types | |
typedef LCRelation | lcobject_type |
Useful typedef for template programming with LCIO. | |
Public Member Functions | |
virtual | ~LCRelation () |
Destructor. | |
virtual LCObject * | getFrom () const =0 |
The 'from' object of the given relation. | |
virtual LCObject * | getTo () const =0 |
The 'to' object of the given relation. | |
virtual float | getWeight () const =0 |
The weight of the given relation - only if collection flag bit LCIO::LCREL_WEIGHTED is set. | |
![]() | |
virtual | ~LCObject () |
Destructor. | |
virtual int | id () const =0 |
Returns an object id for internal (debugging) use in LCIO. | |
virtual LCObject * | clone () const |
Returns an object id for internal (debugging) use in LCIO. More... | |
![]() | |
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,... | |
template<class V > | |
const V::ext_type | ext () const |
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. | |
Additional Inherited Members | |
![]() | |
template<class V > | |
V::ptr & | ptr () const |
Returns the reference to the pointer to the extension/relation object. | |
A single weighted relationship between two LCObjects.
Stored in an LCCollection like any other LCObject. Use inplementations of LCRelationNavigator to navigate the relation efficiently. the types of the objects is decoded in the collection paramters 'RelationFromType' and 'RelationToType'. In order to store weights != 1. with the relation set the collection flag bit LCIO::LCREL_WEIGHTED, this is done automatically in UTIL::LCRelationNavigator if a weight != 1. exists.