00001
00005
00006
00007
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
00033
00034 #ifndef StEmcCollection_hh
00035 #define StEmcCollection_hh
00036
00037 #include "StObject.h"
00038 #include "StContainers.h"
00039 #include "StEnumerations.h"
00040 #include "StEmcPoint.h"
00041 #include "StEmcRawData.h"
00042
00043 class StEmcDetector;
00044
00045 class StEmcCollection : public StObject {
00046 public:
00047 StEmcCollection();
00048 ~StEmcCollection();
00049
00050 StEmcDetector* detector(StDetectorId);
00051 const StEmcDetector* detector(StDetectorId) const;
00052
00053 StSPtrVecEmcPoint& barrelPoints();
00054 const StSPtrVecEmcPoint& barrelPoints() const;
00055 StSPtrVecEmcPoint& endcapPoints();
00056 const StSPtrVecEmcPoint& endcapPoints() const;
00057
00058 StEmcRawData* bemcRawData();
00059 StEmcRawData* eemcRawData();
00060
00061 void addBarrelPoint(const StEmcPoint*);
00062 void addEndcapPoint(const StEmcPoint*);
00063
00064 void setDetector(StEmcDetector*);
00065
00066 void setBemcRawData(StEmcRawData*);
00067 void setEemcRawData(StEmcRawData*);
00068
00069
00070 private:
00071 StEmcCollection(const StEmcCollection&);
00072 StEmcCollection& operator=(const StEmcCollection&);
00073
00074 private:
00075 StEmcDetector* mDetector[8];
00076 StSPtrVecEmcPoint mBarrel;
00077 StSPtrVecEmcPoint mEndcap;
00078 StEmcRawData* mBemcRawData;
00079 StEmcRawData* mEemcRawData;
00080
00081 ClassDef(StEmcCollection,2)
00082 };
00083 #endif
00084
00085
00086
00087
00088
00089
00090
00091