StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StSvtClusterAnalysisMaker.h
1 // $Id: StSvtClusterAnalysisMaker.h,v 1.14 2014/08/06 11:43:45 jeromel Exp $
2 // $Log: StSvtClusterAnalysisMaker.h,v $
3 // Revision 1.14 2014/08/06 11:43:45 jeromel
4 // Suffix on literals need to be space (later gcc compiler makes it an error) - first wave of fixes
5 //
6 // Revision 1.13 2007/07/12 20:06:50 fisyak
7 // Move initialization to IntRun from Init, empty GetSvtDriftCurve, clean up
8 //
9 // Revision 1.12 2004/03/18 04:02:56 caines
10 // Remove from global scope variables used in debug mode as they shouldnt be there and caused erratic behaviour
11 //
12 // Revision 1.11 2003/09/10 19:47:35 perev
13 // ansi corrs
14 //
15 // Revision 1.10 2003/01/28 20:28:09 munhoz
16 // new filters for clusters
17 //
18 // Revision 1.9 2002/05/09 16:55:40 munhoz
19 // add reading bad anodes from DB
20 //
21 // Revision 1.8 2002/04/25 20:34:51 caines
22 // Pass bad anode information into cluster fitter
23 //
24 // Revision 1.7 2001/09/22 01:07:09 caines
25 // Fixes now that AddData() is cleared everyevent
26 //
27 // Revision 1.6 2001/09/16 22:09:31 caines
28 // Add extra checks for when SVT isnt in every event
29 //
30 // Revision 1.5 2001/08/07 20:52:15 caines
31 // Implement better packing of svt hardware and charge values
32 //
33 // Revision 1.4 2001/07/19 20:42:24 caines
34 // Add Reset functions
35 //
36 // Revision 1.3 2001/04/04 19:12:01 didenko
37 // remove ! from comments to create Streamer
38 //
39 // Revision 1.2 2000/08/21 13:06:58 caines
40 // Much improved hit finding and fitting
41 //
42 // Revision 1.1 2000/07/06 03:50:33 caines
43 // First version of cluster finder and fitter
44 //
45 //
46 #ifndef STAR_StSvtClusterAnalysis
47 #define STAR_StSvtClusterAnalysis
48 // //
50 // StSvtClusterAnalysis base class //
51 // //
53 #ifndef StMaker_H
54 #include "StMaker.h"
55 #endif
56 
57 
58 class TH1F;
59 class TH2F;
60 class TObjectSet;
61 class TFile;
62 class TNtuple;
63 
64 class StSvtHit;
66 class StSvtHybridPixels;
67 class StSvtHybridCluster;
68 class StSvtHybridData;
69 class StSvtData;
70 class StSvtAnalysis;
73 
75 {
76  public:
77  StSvtClusterAnalysisMaker(const char *name = "SvtAnalysis");
80 
81  virtual Int_t InitRun(int runumber);
82  virtual Int_t Make();
83  virtual Int_t Finish();
84  virtual void Clear(Option_t *option="");
85 
86  Int_t Reset();
87 
88  Int_t GetSvtEvent();
89  Int_t GetSvtRawEvent();
90  Int_t GetSvtPixels();
91  Int_t GetSvtCluster();
92  Int_t SetSvtAnalysis();
93 
94  Int_t GetRawData(int index);
95  Int_t GetPixelData(int index);
96  Int_t GetTotNumOfClu();
97 
98  Int_t SetThreshOld(Int_t thresh, Int_t offset);
99  Int_t CreateClusterHist(Int_t tNuOfHyb); // Tracking histograms
100  Int_t SetClusterAnalysis();
101  void printClusterInfo();
102  void MakeHistograms(); // Tracking histograms
103  virtual const char *GetCVS() const
104  {static const char cvs[]="Tag $Name: $ $Id: StSvtClusterAnalysisMaker.h,v 1.14 2014/08/06 11:43:45 jeromel Exp $ built " __DATE__ " " __TIME__ ; return cvs;}
105 
106 
107  protected:
108 
109  Int_t mThreshOld;
110  Int_t mOffSet;
111  Int_t mNumOfClusters;
112  Int_t mNumOfMembers;
113  Int_t mTotNumOfClusters;
114  Int_t mTotNumOfGoodClusters;
115  Int_t mTotNumOfBadClusters;
116  Int_t mTotalNumberOfHybrids;
117 
118  Int_t mNoEvents;
119 
120 
121  Float_t adcArray[128*240];
122 
123  TFile *hfile;
124  TNtuple* ntpl;
125 
126  StSvtData* mSvtAdjEvent;
127  StSvtHybridData* mHybridRawData ;
128  StSvtHybridData* mHybridAdjData ;
129  StSvtHybridPixels* mHybridPixelData ;
130  StSvtHybridCluster* mHybridCluster ;
131  StSvtHybridCollection* mSvtPixelColl;
132  StSvtHybridCollection* mSvtClusterColl;
133  StSvtHybridCollection* mSvtRawEventColl;
134  StSvtHybridCollection* mSvtBadAnodeSet;
135  //StSvtData* mSvtClusterColl; //!
136  //StSvtData* mSvtRawEventColl; //!
137  StSvtHybridCollection* mSvtAnalColl;
138  StSvtAnalysis* mSvtAnalysis;
139  StSvtAnalysedHybridClusters* mSvtAnalClusters;
140  StSvtHit* mSvtHit;
141  StSvtHybridBadAnodes* mSvtBadAnode;
142 
143  St_ObjectSet* mSvtAnalSet;
144 
145  TH1F *m_n_seq;
146  TH1F **m_sumADC;
147  TH1F *m_sumADC_all;
148  TH2F *m_nClust;
153 
154 
155  private:
156 
157  ClassDef(StSvtClusterAnalysisMaker,0) //virtual base class for Makers
158 
159 };
160 
161 
162 #endif
TH2F * m_nClust
Sum of ADC on hits.
TH2F * m_SumADCvsTime
Timebucket vs anode for raw sequences.
TH1F ** m_sumADC
No. of seq on a cluster.
TH1F * m_sumADC_all
Sum of ADC on hits.
virtual void Clear(Option_t *option="")
User defined functions.
TH2F ** m_time_anode_raw
Timebucket vs anode for clusters.
TH2F ** m_time_anode_clu
No. of clusters per event.
TH2F * m_PeakADCvsTime
Timebucket vs SUM ADC of clusters.