00001
00002
00003
00004
00005
00006
00007 #ifndef EVENT_LCGENERICOBJECT_H
00008 #define EVENT_LCGENERICOBJECT_H 1
00009
00010 #include <string>
00011
00012 #include "EVENT/LCObject.h"
00013
00014 namespace EVENT {
00015
00027 class LCGenericObject : public LCObject {
00028
00029 public:
00031 virtual ~LCGenericObject() { ; }
00032
00033
00035 typedef LCGenericObject lcobject_type ;
00036
00039 virtual int getNInt() const = 0;
00040
00043 virtual int getNFloat() const = 0;
00044
00047 virtual int getNDouble() const = 0;
00048
00051 virtual int getIntVal(int index) const = 0;
00052
00055 virtual float getFloatVal(int index) const = 0;
00056
00059 virtual double getDoubleVal(int index) const = 0;
00060
00065 virtual bool isFixedSize() const = 0;
00066
00072 virtual const std::string getTypeName() const = 0;
00073
00078 virtual const std::string getDataDescription() const = 0;
00079
00080
00083 virtual int id() const { return 0 ; }
00084 };
00085 }
00086 #endif