StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StEmcCollection.h
1 
5 /***************************************************************************
6  *
7  * $Id: StEmcCollection.h,v 2.5 2004/03/26 21:54:15 ullrich Exp $
8  *
9  * Author: Akio Ogawa, Jan 2000
10  ***************************************************************************
11  *
12  * Description:
13  *
14  ***************************************************************************
15  *
16  * $Log: StEmcCollection.h,v $
17  * Revision 2.5 2004/03/26 21:54:15 ullrich
18  * Added StEmcRawData to collection.
19  *
20  * Revision 2.4 2002/02/22 22:56:47 jeromel
21  * Doxygen basic documentation in all header files. None of this is required
22  * for QM production.
23  *
24  * Revision 2.3 2001/04/05 04:00:35 ullrich
25  * Replaced all (U)Long_t by (U)Int_t and all redundant ROOT typedefs.
26  *
27  * Revision 2.2 2000/03/23 22:24:06 akio
28  * Initial version of Emc Point, and Inclusion of track pointers
29  *
30  * Revision 2.1 2000/02/23 17:34:07 ullrich
31  * Initial Revision
32  *
33  **************************************************************************/
34 #ifndef StEmcCollection_hh
35 #define StEmcCollection_hh
36 
37 #include "StObject.h"
38 #include "StContainers.h"
39 #include "StEnumerations.h"
40 #include "StEmcPoint.h"
41 #include "StEmcRawData.h"
42 
43 class StEmcDetector;
44 
45 class StEmcCollection : public StObject {
46 public:
48  ~StEmcCollection();
49 
50  StEmcDetector* detector(StDetectorId);
51  const StEmcDetector* detector(StDetectorId) const;
52 
53  StSPtrVecEmcPoint& barrelPoints();
54  const StSPtrVecEmcPoint& barrelPoints() const;
55  StSPtrVecEmcPoint& endcapPoints();
56  const StSPtrVecEmcPoint& endcapPoints() const;
57 
58  StEmcRawData* bemcRawData();
59  StEmcRawData* eemcRawData();
60 
61  void addBarrelPoint(const StEmcPoint*);
62  void addEndcapPoint(const StEmcPoint*);
63 
64  void setDetector(StEmcDetector*);
65 
66  void setBemcRawData(StEmcRawData*);
67  void setEemcRawData(StEmcRawData*);
68 
69 
70 private:
72  StEmcCollection& operator=(const StEmcCollection&);
73 
74 private:
75  StEmcDetector* mDetector[8];
76  StSPtrVecEmcPoint mBarrel;
77  StSPtrVecEmcPoint mEndcap;
78  StEmcRawData* mBemcRawData;
79  StEmcRawData* mEemcRawData;
80 
81  ClassDef(StEmcCollection,2)
82 };
83 #endif
84 
85 
86 
87 
88 
89 
90 
91