3 #include "EVENT/LCIO.h"
9 #include <sio/io_device.h>
10 #include <sio/version.h>
25 SIO_SDATA( device ,
_nInt ) ;
37 for(
unsigned int i=0 ; i < nObj ; i++ ) {
39 if( ! obj->isFixedSize() ) {
55 colflag.setBit( EVENT::LCIO::GOBIT_FIXED ) ;
60 _flag = colflag.getFlag() ;
65 _nInt = gObj->getNInt() ;
74 SIO_SDATA( device ,
_nInt ) ;
86 SIO_SDATA( device ,
_nInt ) ;
90 gobj->_intVec.resize(
_nInt ) ;
91 gobj->_floatVec.resize(
_nFloat ) ;
92 gobj->_doubleVec.resize(
_nDouble ) ;
93 SIO_DATA( device , &(gobj->_intVec[0]),
_nInt ) ;
94 SIO_DATA( device , &(gobj->_floatVec[0]),
_nFloat ) ;
95 SIO_DATA( device , &(gobj->_doubleVec[0]),
_nDouble ) ;
96 SIO_PTAG( device , gobj ) ;
104 _nInt = gObj->getNInt() ;
107 SIO_SDATA( device ,
_nInt ) ;
108 SIO_SDATA( device ,
_nFloat ) ;
112 for(
int i=0 ; i<
_nInt ; i++) {
113 SIO_SDATA( device , gObj->getIntVal( i ) ) ;
115 for(
int i=0 ; i<
_nFloat ; i++) {
116 SIO_SDATA( device , gObj->getFloatVal( i ) ) ;
119 SIO_SDATA( device , gObj->getDoubleVal( i ) ) ;
121 SIO_PTAG( device , gObj ) ;
The generic object that is held in an LCCollection.
virtual bool bitSet(int index) const
Returns true if bit at given index is set.
void initWriting(sio::write_device &device, EVENT::LCCollection *collection) override
Init collection reading.
Adding stuff needed for io (friend declarations, etc.)
void read(sio::read_device &device, EVENT::LCObject *objP, sio::version_type vers) override
Reads lcio objects from an SIO stream.
virtual void setFlag(int flag)=0
Set the flag word.
EVENT::LCObject * create() const override
Factory method to create an object of the type of the collection.
Interface for all lcio object SIO-handlers, has to be implemented for all event entities (hits...
unsigned int _flag
The collection flag.
virtual void initReading(sio::read_device &device, EVENT::LCCollection *collection, sio::version_type vers)
Init collection reading.
virtual LCObject * getElementAt(int index) const =0
Returns pointer to element at index - no range check, use getNumberOfEntries().
virtual int getFlag() const =0
Returns flag word for collection.
virtual void initWriting(sio::write_device &device, EVENT::LCCollection *collection)
Init collection writing.
virtual LCParameters & parameters()=0
Parameters defined for this collection.
Implementation of helper class to create and interpret the 32-bit flag word in LCCollections.
Simple interface to store generic user data.
virtual void setValue(const std::string &key, int value)=0
Set integer value for the given key.
void write(sio::write_device &device, const EVENT::LCObject *obj) override
Writes lcio objects to an SIO stream.
SIOLCGenericObjectHandler()
Constructor.
virtual int getNumberOfElements() const =0
Returns the number of elements in the collection.
The generic collection used in LCIO.
virtual const std::string & getStringVal(const std::string &key) const =0
Returns the first string value for the given key.
void initReading(sio::read_device &device, EVENT::LCCollection *collection, sio::version_type vers) override
Init collection reading.