StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StMuFmsCollection.h
1 /***************************************************************************
2  *
3  * $Id: StMuFmsCollection.h,v 1.6 2017/08/14 16:22:36 smirnovd Exp $
4  *
5  * Author: Jingguo Ma, Jan 2010
6  ***************************************************************************
7  *
8  * Description: FMS data interface to StMuFmsHit, StMuFmsCluster and StMuFmsPoint
9  *
10  ***************************************************************************
11  *
12  * $Log: StMuFmsCollection.h,v $
13  * Revision 1.6 2017/08/14 16:22:36 smirnovd
14  * Recover FMS hits using StTriggerData
15  *
16  * commit 6d7358f4c86a15edd0671326580d291a9843aec9
17  * Date: Tue Aug 8 23:42:41 2017 -0400
18  *
19  * StMuFmsUtil: Recover FMS hits using StTriggerData
20  *
21  * commit 556d07cb8fd87cb62e4ac674226423671c94917d
22  * Date: Tue Aug 8 23:42:34 2017 -0400
23  *
24  * StMuFmsUtil: Added func to fill StMuFmsCollection with FMS hits from StTriggerData in StMuEvent
25  *
26  * commit c355529c1ee401849b2b81d74df8d452886593d1
27  * Date: Tue Aug 8 23:42:19 2017 -0400
28  *
29  * [Cosmetic] Changes in whitespace
30  *
31  * commit 67fdc1b348bebbfbfb137b726ee9c455a7d8be37
32  * Date: Mon Jun 5 12:00:24 2017 -0400
33  *
34  * StMuFmsCollection::addHit() Return pointer to just added default FMS hit object
35  *
36  * Revision 1.5 2015/11/06 17:47:16 jdb
37  * Added StMuFmsInfo.{h,cxx} as a new branch for storing event-by-event FMS paramters
38  *
39  * Revision 1.4 2015/10/23 19:22:49 jdb
40  * akio added mFmsReconstructionFlag and related getters and setters. pushed version number of StMuFmsCollection. Corresponding changes for reconstruction flag in StMuFmsUtil.cxx
41  *
42  * Revision 1.3 2015/10/16 18:13:28 jdb
43  * incremented version # for StMuFmsCollection and StMuFmsPoint
44  *
45  * Revision 1.2 2015/08/28 18:36:04 jdb
46  * Added Akios FMS codes
47  *
48  * Revision 1.1 2010/01/25 03:57:39 tone421
49  * Added FMS and Roman pot arrays
50  *
51  **************************************************************************/
52 #ifndef StMuFmsCollection_hh
53 #define StMuFmsCollection_hh
54 
55 #include "St_base/StObject.h"
56 #include "TClonesArray.h"
57 
58 class StMuFmsHit;
59 class StMuFmsCluster;
60 class StMuFmsPoint;
61 class StMuFmsInfo;
62 
63 class StMuFmsCollection : public TObject {
64 public:
67 
68  void init();
69  StMuFmsHit* addHit();
70  void addCluster();
71  void addInfo();
72  StMuFmsPoint* addPoint();
73  unsigned int numberOfHits() const;
74  unsigned int numberOfClusters() const;
75  unsigned int numberOfPoints() const;
76  void setFmsHitArray(TClonesArray *array) {mHits=array;};
77  void setFmsClusterArray(TClonesArray* array) {mClusters=array;}
78  void setFmsPointArray(TClonesArray* array) {mPoints=array;}
79  void setFmsInfoArray(TClonesArray* array) {mInfo=array;}
80 
81  StMuFmsHit* getHit(int hitId);
82  StMuFmsCluster* getCluster(int index);
83  StMuFmsPoint* getPoint(int index);
84  StMuFmsInfo* getInfo();
85  TClonesArray* getHitArray() { return mHits; };
86  TClonesArray* getClusterArray() { return mClusters; }
87  TClonesArray* getPointArray() { return mPoints; }
88 
89 
90  Int_t fmsReconstructionFlag();
91  void setFmsReconstructionFlag(Int_t v);
92 
93 private:
94  TClonesArray* mHits;
95  TClonesArray* mClusters;
96  TClonesArray* mPoints;
97  TClonesArray* mInfo;
98 
99  ClassDef(StMuFmsCollection,5)
100 };
101 #endif