00001
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef StRichMCPixel_hh
00033 #define StRichMCPixel_hh
00034
00035 #include "StRichPixel.h"
00036 #include "StRichMCInfo.h"
00037 #include "StContainers.h"
00038
00039 class StRichMCPixel : public StRichPixel {
00040 public:
00041 StRichMCPixel();
00042 StRichMCPixel(unsigned int packedData);
00043 StRichMCPixel(unsigned int packedData, const StSPtrVecRichMCInfo&);
00044
00045
00046 ~StRichMCPixel();
00047
00048 int operator==(const StRichMCPixel&) const;
00049 int operator!=(const StRichMCPixel&) const;
00050
00051 unsigned short contributions() const;
00052
00053 void addInfo(const StRichMCInfo*);
00054 void setInfo(const StSPtrVecRichMCInfo&);
00055
00056 const StSPtrVecRichMCInfo& getMCInfo() const;
00057 StSPtrVecRichMCInfo& getMCInfo();
00058
00059 protected:
00060 StSPtrVecRichMCInfo mInfo;
00061
00062 ClassDef(StRichMCPixel,1)
00063 };
00064
00065 inline unsigned short StRichMCPixel::contributions() const { return mInfo.size(); }
00066 inline void StRichMCPixel::addInfo(const StRichMCInfo* p) { mInfo.push_back(p);}
00067 inline void StRichMCPixel::setInfo(const StSPtrVecRichMCInfo& p) { mInfo = p;}
00068 inline const StSPtrVecRichMCInfo& StRichMCPixel::getMCInfo() const {return mInfo;}
00069 inline StSPtrVecRichMCInfo& StRichMCPixel::getMCInfo() { return mInfo;}
00070
00071 #endif