/[PAMELA software]/PamelaLevel2/inc/PamLevel2.h
ViewVC logotype

Annotation of /PamelaLevel2/inc/PamLevel2.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.35 - (hide annotations) (download)
Tue Sep 30 07:45:22 2008 UTC (16 years, 2 months ago) by mocchiut
Branch: MAIN
Changes since 1.34: +3 -0 lines
File MIME type: text/plain
InclinationInfo.h included in PamLevel2.h

1 pam-fi 1.1
2    
3     /**
4     * \file PamLevel2.h
5     * \author Elena Vannuccini
6     */
7     #ifndef pamlevel2_h
8     #define pamlevel2_h
9    
10 pam-fi 1.2 #include <TRefArray.h>
11 pam-fi 1.1
12 pam-fi 1.13 #include <TrkStruct.h>
13     #include <TrkParams.h>
14     #include <TrkLevel0.h>
15 pam-fi 1.4 #include <TrkLevel1.h>
16 pam-fi 1.1 #include <TrkLevel2.h>
17 pam-fi 1.6 #include <TrkHough.h>
18 mocchiut 1.16 #include <CaloLevel0.h>
19 pam-fi 1.6 #include <CaloLevel1.h>
20 pam-fi 1.1 #include <CaloLevel2.h>
21     #include <ToFLevel2.h>
22     #include <TrigLevel2.h>
23     #include <S4Level2.h>
24     #include <NDLevel2.h>
25     #include <AcLevel2.h>
26 pam-fi 1.2 #include <OrbitalInfo.h>
27 mocchiut 1.35 #include <InclinationInfo.h> // EMILIANO, now this library is included in libDarthVader.so
28     // and the header installed in $PAM_INC. If you get the
29     // error "Cannot find InclinationInfo.h" update your DV installation
30 pam-fi 1.4 #include <RunInfo.h>
31     #include <GLTables.h>
32    
33 pam-fi 1.1
34     #include <TTree.h>
35 pam-fi 1.7 #include <TFriendElement.h>
36 pam-fi 1.2 #include <TChain.h>
37 pam-fi 1.26 #include <TChainElement.h>
38 pam-fi 1.1 #include <TFile.h>
39 pam-fi 1.2 #include <TList.h>
40     #include <TKey.h>
41     #include <TSystemFile.h>
42     #include <TSystemDirectory.h>
43 pam-fi 1.13 #include <TSQLServer.h>
44 pam-fi 1.1
45 pam-fi 1.26 #include <stdlib.h>
46 pam-fi 1.1 #include <iostream>
47 pam-fi 1.26 #include <iomanip>
48     using namespace std;
49 pam-fi 1.13
50     #define NCLONES 10
51    
52 pam-fi 1.1 using namespace std;
53    
54 pam-fi 1.30
55     /////////////////////////////////////////////////////////////////////////////
56     /////////////////////////////////////////////////////////////////////////////
57     /////////////////////////////////////////////////////////////////////////////
58     /////////////////////////////////////////////////////////////////////////////
59     /**
60     * \brief Class to describe GP output (to be moved to PamelaDigitizer)
61     *
62     */
63    
64     class GPamela : public TObject {
65    
66     private:
67    
68     public:
69    
70     // Declaration of leave types
71     Int_t Irun;
72     Int_t Ievnt;
73     Int_t Ipa;
74     Float_t X0;
75     Float_t Y0;
76     Float_t Z0;
77     Float_t Theta;
78     Float_t Phi;
79     Float_t P0;
80     Int_t Nthtof;
81     UChar_t Ipltof[100]; //[Nthtof]
82     UChar_t Ipaddle[100]; //[Nthtof]
83     UChar_t Ipartof[100]; //[Nthtof]
84     Float_t Xintof[100]; //[Nthtof]
85     Float_t Yintof[100]; //[Nthtof]
86     Float_t Zintof[100]; //[Nthtof]
87     Float_t Xouttof[100]; //[Nthtof]
88     Float_t Youttof[100]; //[Nthtof]
89     Float_t Zouttof[100]; //[Nthtof]
90     Float_t Ereltof[100]; //[Nthtof]
91     Float_t Timetof[100]; //[Nthtof]
92     Float_t Pathtof[100]; //[Nthtof]
93     Float_t P0tof[100]; //[Nthtof]
94     Int_t Nthcat;
95     UChar_t Iparcat[50]; //[Nthcat]
96     UChar_t Icat[50]; //[Nthcat]
97     Float_t Xincat[50]; //[Nthcat]
98     Float_t Yincat[50]; //[Nthcat]
99     Float_t Zincat[50]; //[Nthcat]
100     Float_t Xoutcat[50]; //[Nthcat]
101     Float_t Youtcat[50]; //[Nthcat]
102     Float_t Zoutcat[50]; //[Nthcat]
103     Float_t Erelcat[50]; //[Nthcat]
104     Float_t Timecat[50]; //[Nthcat]
105     Float_t Pathcat[50]; //[Nthcat]
106     Float_t P0cat[50]; //[Nthcat]
107     Int_t Nthcas;
108     UChar_t Iparcas[50]; //[Nthcas]
109     UChar_t Icas[50]; //[Nthcas]
110     Float_t Xincas[50]; //[Nthcas]
111     Float_t Yincas[50]; //[Nthcas]
112     Float_t Zincas[50]; //[Nthcas]
113     Float_t Xoutcas[50]; //[Nthcas]
114     Float_t Youtcas[50]; //[Nthcas]
115     Float_t Zoutcas[50]; //[Nthcas]
116     Float_t Erelcas[50]; //[Nthcas]
117     Float_t Timecas[50]; //[Nthcas]
118     Float_t Pathcas[50]; //[Nthcas]
119     Float_t P0cas[50]; //[Nthcas]
120     Int_t Nthspe;
121     UChar_t Iparspe[100]; //[Nthspe]
122     UChar_t Itrpb[100]; //[Nthspe]
123     UChar_t Itrsl[100]; //[Nthspe]
124     UChar_t Itspa[100]; //[Nthspe]
125     Float_t Xinspe[100]; //[Nthspe]
126     Float_t Yinspe[100]; //[Nthspe]
127     Float_t Zinspe[100]; //[Nthspe]
128     Float_t Xoutspe[100]; //[Nthspe]
129     Float_t Youtspe[100]; //[Nthspe]
130     Float_t Zoutspe[100]; //[Nthspe]
131     Float_t Xavspe[100]; //[Nthspe]
132     Float_t Yavspe[100]; //[Nthspe]
133     Float_t Zavspe[100]; //[Nthspe]
134     Float_t Erelspe[100]; //[Nthspe]
135     Float_t Pathspe[100]; //[Nthspe]
136     Float_t P0spe[100]; //[Nthspe]
137     UChar_t Nxmult[100]; //[Nthspe]
138     UChar_t Nymult[100]; //[Nthspe]
139     Int_t Nstrpx;
140     UChar_t Npstripx[1000]; //[Nstrpx]
141     UChar_t Ntstripx[1000]; //[Nstrpx]
142     UShort_t Istripx[1000]; //[Nstrpx]
143     //UInt_t Istripx[1000]; //[Nstrpx]
144     Float_t Qstripx[1000]; //[Nstrpx]
145     Float_t Xstripx[1000]; //[Nstrpx]
146     Int_t Nstrpy;
147     UChar_t Npstripy[1000]; //[Nstrpy]
148     UChar_t Ntstripy[1000]; //[Nstrpy]
149     UShort_t Istripy[1000]; //[Nstrpy]
150     //UInt_t Istripy[1000]; //[Nstrpy]
151     Float_t Qstripy[1000]; //[Nstrpy]
152     Float_t Ystripy[1000]; //[Nstrpy]
153     Int_t Nthcali;
154     UChar_t Icaplane[4224]; //[Nthcali]
155     UChar_t Icastrip[4224]; //[Nthcali]
156     Int_t Icamod[4224]; //[Nthcali]
157     Float_t Enestrip[4224]; //[Nthcali]
158     Int_t Nthcal;
159     UChar_t Icapl[1000]; //[Nthcal]
160     UChar_t Icasi[1000]; //[Nthcal]
161     UChar_t Icast[1000]; //[Nthcal]
162     Float_t Xincal[1000]; //[Nthcal]
163     Float_t Yincal[1000]; //[Nthcal]
164     Float_t Zincal[1000]; //[Nthcal]
165     Float_t Erelcal[1000]; //[Nthcal]
166     Int_t Nthnd;
167     UChar_t Itubend[200]; //[Nthnd]
168     UChar_t Iparnd[200]; //[Nthnd]
169     Float_t Xinnd[200]; //[Nthnd]
170     Float_t Yinnd[200]; //[Nthnd]
171     Float_t Zinnd[200]; //[Nthnd]
172     Float_t Xoutnd[200]; //[Nthnd]
173     Float_t Youtnd[200]; //[Nthnd]
174     Float_t Zoutnd[200]; //[Nthnd]
175     Float_t Erelnd[200]; //[Nthnd]
176     Float_t Timend[200]; //[Nthnd]
177     Float_t Pathnd[200]; //[Nthnd]
178     Float_t P0nd[200]; //[Nthnd]
179     Int_t Nthcard;
180     UChar_t Iparcard[100]; //[Nthcard]
181     UChar_t Icard[100]; //[Nthcard]
182     Float_t Xincard[100]; //[Nthcard]
183     Float_t Yincard[100]; //[Nthcard]
184     Float_t Zincard[100]; //[Nthcard]
185     Float_t Xoutcard[100]; //[Nthcard]
186     Float_t Youtcard[100]; //[Nthcard]
187     Float_t Zoutcard[100]; //[Nthcard]
188     Float_t Erelcard[100]; //[Nthcard]
189     Float_t Timecard[100]; //[Nthcard]
190     Float_t Pathcard[100]; //[Nthcard]
191     Float_t P0card[100]; //[Nthcard]
192    
193     GPamela(){ Clear(); };
194     // ~GPamela(){ Delete(); };
195     ~GPamela(){ Clear(); };
196    
197     void Clear();
198     void Delete();
199     void SetBranchAddress( TChain* );
200     void SetBranchAddress( TTree* t){ SetBranchAddress( (TChain*)t );};
201    
202     GPamela* GetGPamela(){return this;};
203    
204     ClassDef(GPamela,1);
205    
206     };
207     /////////////////////////////////////////////////////////////////////////////
208     /////////////////////////////////////////////////////////////////////////////
209     /////////////////////////////////////////////////////////////////////////////
210     /////////////////////////////////////////////////////////////////////////////
211    
212    
213    
214 pam-fi 1.1 /**
215     * \brief Class to describe particle tracks in the apparatus, including tracker and track-related variables from other detectors (calorimeter and TOF).
216     *
217     * This class inherites from TrkTrack, CaloTrkVar ecc...
218     *
219     */
220 pam-fi 1.10 //class PamTrack : public TrkTrack, public CaloTrkVar, public ToFTrkVar {
221     class PamTrack : public TObject {
222 pam-fi 1.1
223     private:
224    
225     TrkTrack* trk_track;
226     CaloTrkVar* calo_track;
227     ToFTrkVar* tof_track;
228 mocchiut 1.27 Int_t pscore;
229     Int_t iscore;
230 pam-fi 1.10 bool candeleteobj;
231    
232     // TClonesArray *Cluster; ///< clusters (if stored)
233    
234 pam-fi 1.1 public:
235    
236     PamTrack();
237 pam-fi 1.10 PamTrack(TrkTrack* , CaloTrkVar* , ToFTrkVar* );
238     PamTrack(const PamTrack&);
239     ~PamTrack(){ Delete(); };
240 pam-fi 1.1
241 pam-fi 1.10 void Clear();
242     void Clear(Option_t *option){Clear();};
243     void Delete();
244 pam-fi 1.1
245 mocchiut 1.27 Bool_t IsSolved(){if ((pscore-iscore)>0) return true; return false;};
246     Int_t GetScore(){return (pscore-iscore);};
247     Int_t GetPScore(){return (pscore);};
248     Int_t GetIScore(){return (iscore);};
249     void SetPScore(Int_t p){pscore=p;};
250     void SetIScore(Int_t i){iscore=i;};
251    
252 pam-fi 1.10 TrkTrack* GetTrkTrack(){return trk_track;};
253 pam-fi 1.8 CaloTrkVar* GetCaloTrack(){return calo_track;};
254 pam-fi 1.10 ToFTrkVar* GetToFTrack(){return tof_track;};
255 pam-fi 1.8
256 pam-fi 1.1 ClassDef(PamTrack,1);
257     };
258    
259     /**
260     * \brief Class to describe PAMELA LEVEL2 data.
261     *
262     * This class inherites from TrkLevel2, CaloLevel2 ecc... and it overrides the TrkLevel2:GetTrack(int it) and TrkLevel2:GetTrackImage(int it) methods.
263     * This allows to solve the tracker ambiguity (that is, to choose between track images) by using also information from other detectors.
264     */
265    
266 pam-fi 1.10 //class PamLevel2 : public CaloLevel2, public CaloLevel1, public ToFLevel2, public TrkLevel2, public TrkLevel1, public TrkHough, public TrigLevel2, public S4Level2, public NDLevel2, public AcLevel2, public OrbitalInfo {
267     class PamLevel2 : public TObject {
268 pam-fi 1.1
269     private:
270    
271 pam-fi 1.13 // ------------------------------
272     // variables to retrieve run info
273     // ------------------------------
274 pam-fi 1.17 Long64_t irun; //current run entry, relative to the TChain
275 pam-fi 1.31 Long64_t irunt; //current run entry, relative to the TTree in the TChain
276 pam-fi 1.17 Long64_t runfirstentry; //first entry of run, relative to the TChain
277     Long64_t runlastentry; //last entry of run, relative to the TChain
278     Long64_t irunentry; //position of current entry, relative to the run
279 pam-fi 1.13 TChain* run_tree;
280     TTree* run_tree_clone;
281     TChain* sel_tree;
282     TTree* sel_tree_clone;
283 pam-fi 1.32 int *irunoffset;
284 pam-fi 1.26
285     // -------------------------------------------
286     // variables to store total live and dead time
287     // -------------------------------------------
288     ULong64_t totdltime[3];// 0=live 1=dead 2=n.events
289    
290 pam-fi 1.13 // ---------------------------------
291     // variables to retrieve level0 info
292     // ---------------------------------
293     TFile* l0_file;
294     TTree* l0_tree;
295     Int_t iroot;
296 mocchiut 1.16 Int_t prevshift; // to remember if any shift is needed to synchronize l0 and l2 data instead of calculating any time
297 mocchiut 1.29 Int_t maxshift; // EMILIANO maximum discrepancy between L2 and L0 data (the bigger the better concering synch but the processing speed drops) default = 10
298 pam-fi 1.13 // --------------------------------------------
299     // variables to store Level0 info (if required)
300     // --------------------------------------------
301     EventHeader* h0_obj;
302     TrkLevel0* trk0_obj;
303 pam-fi 1.17 CaloLevel0* calo0_obj;
304 pam-fi 1.13
305     // ---------------------------
306     // variables to connect the DB
307     // ---------------------------
308     TSQLServer* dbc;
309     TString host;
310     TString user;
311     TString psw;
312    
313     // ---------------------------------------------
314     // variables to retrieve and clone level1-2 info
315     // ---------------------------------------------
316     TChain* pam_tree;
317     TTree* pam_tree_clone[NCLONES];
318 mocchiut 1.18
319 pam-fi 1.13 // --------------------------------------------
320 pam-fi 1.30 // variables to store Level1-2 info
321 pam-fi 1.13 // --------------------------------------------
322 pam-fi 1.6 TrkLevel1* trk1_obj;
323     TrkLevel2* trk2_obj;
324     TrkHough* trkh_obj;
325     CaloLevel1* calo1_obj;
326     CaloLevel2* calo2_obj;
327 pam-fi 1.2 ToFLevel2* tof_obj;
328     TrigLevel2* trig_obj;
329     S4Level2* s4_obj;
330     NDLevel2* nd_obj;
331     AcLevel2* ac_obj;
332 pam-fi 1.6 OrbitalInfo* orb_obj;
333     GL_RUN* run_obj;
334 mocchiut 1.11 SoftInfo* soft_obj; // Emiliano
335 pam-fi 1.10
336 pam-fi 1.30 // --------------------------------------------
337     // variables to handle GP
338     // --------------------------------------------
339     GPamela* gp_obj;
340    
341 pam-fi 1.13 // -----------------------------------
342     // variables to sort the track
343     // -----------------------------------
344 pam-fi 1.10 TClonesArray *tsorted;
345     TClonesArray *timage;
346     PamTrack *track; //store the last required
347 mocchiut 1.20 TString howtosort;
348     Float_t sortthr;
349 pam-fi 1.7
350 pam-fi 1.30 // --------------------------------------
351     // flags to load level0-1-2 trees/braches
352     // --------------------------------------
353 pam-fi 1.6 Bool_t CAL2; //level2 branch
354     Bool_t CAL1; //level1 branch
355 pam-fi 1.13 Bool_t CAL0; //yoda
356 pam-fi 1.6
357     Bool_t TRK2; //level2 branch
358     Bool_t TRK1; //level1 branch
359     Bool_t TRKh; //hough branch
360 pam-fi 1.13 Bool_t TRK0; //yoda
361    
362     Bool_t TOF;
363     Bool_t TOF0;
364 pam-fi 1.6
365     Bool_t TRG;
366     Bool_t S4;
367     Bool_t ND;
368     Bool_t AC;
369     Bool_t ORB;
370 pam-fi 1.9
371 pam-fi 1.30 Bool_t GP; //GP simulation tree
372 pam-fi 1.25
373 pam-fi 1.30 // -----------
374     // other flags
375     // -----------
376     Bool_t RUN; // RunInfo tree
377     Bool_t ISGP; // GP simulation (...sort of patch, to skip OBT check, since OrbitalInfo is sometime missing)
378     Int_t SELLI; // tree of selected events (there is a selection list)
379 pam-fi 1.13
380 pam-fi 1.34 Bool_t DBG;
381    
382 mocchiut 1.18 void Initialize();
383    
384 pam-fi 1.13
385     public:
386 pam-fi 1.6
387 mocchiut 1.18 PamLevel2(TString ddir,TString list,TString detlist);
388     PamLevel2(TString ddir,TString list);
389 pam-fi 1.1 PamLevel2();
390 pam-fi 1.10 ~PamLevel2(){Delete();};
391 pam-fi 1.2
392 pam-fi 1.6 void Clear();
393 mocchiut 1.18 void Reset();
394 pam-fi 1.10 void Delete();
395 pam-fi 1.2
396 mocchiut 1.12
397 pam-fi 1.13 // =============================================
398     // methods needed to read/write Level0-1-2 trees
399     // =============================================
400 pam-fi 1.6 void SetWhichTrees(TString);
401 pam-fi 1.8 void GetWhichTrees(TFile*);
402    
403     TTree* GetPamTree(TFile*,TString);
404 pam-fi 1.26 TTree* GetPamTree(TFile* f){return GetPamTree(f,"");};
405 pam-fi 1.8
406 pam-fi 1.6 TList* GetListOfLevel2Files(TString, TString);
407     Bool_t CheckLevel2File(TString);
408     TChain* GetPamTree(TList*,TString);
409 pam-fi 1.8 TChain* GetPamTree(TString ddir,TString list,TString detlist){ return GetPamTree(GetListOfLevel2Files(ddir,list),detlist); };
410     TChain* GetPamTree(TString ddir,TString list){ return GetPamTree(GetListOfLevel2Files(ddir,list),""); };
411 pam-fi 1.26 TChain* AddFriend(TString);
412 pam-fi 1.8
413 pam-fi 1.6 TTree* GetRunTree(TFile*);
414     TChain* GetRunTree(TList*);
415 mocchiut 1.12 TChain* GetRunTree(TString ddir,TString list){ return GetRunTree(GetListOfLevel2Files(ddir,list)); };
416 pam-fi 1.28 Bool_t UpdateRunInfo(Long64_t);//{ return UpdateRunInfo(run_tree,iev); };
417 pam-fi 1.17 Bool_t UpdateRunInfo(TTree *,Long64_t);
418     Bool_t UpdateRunInfo(TChain *,Long64_t);
419 pam-fi 1.7
420 pam-fi 1.8 void CreateCloneTrees0(TChain *fChain, TFile* file);
421     void CreateCloneTrees(TFile* file);
422 pam-fi 1.23 void CreateCloneTrees(){CreateCloneTrees(NULL);};
423 pam-fi 1.7 void FillCloneTrees();
424     TTree *GetCloneTree(TString);
425     void WriteCloneTrees();
426    
427 pam-fi 1.6 void SetBranchAddress(TTree *);
428     void SetBranchAddress(TChain *);
429    
430 pam-fi 1.17 // Int_t GetEntry(Int_t);
431     Int_t GetEntry(Long64_t);
432 pam-fi 1.13 Int_t GetYodaEntry();
433 mocchiut 1.21
434 mocchiut 1.29 void SetMaxShift(Int_t sh){ maxshift = sh; return;}; // EMILIANO method to change the maxshift variable
435    
436 mocchiut 1.21 Long64_t GetEntries(){return pam_tree->GetEntries();};
437 pam-fi 1.13 TChain* GetPamTree(){return pam_tree;};
438     TChain* GetRunTree(){return run_tree;};
439     TTree* GetYodaTree();
440    
441 mocchiut 1.16 TFile* GetYodaFile(){return l0_file;}; // can be useful to know the name of level0 file we are using or similar things
442    
443 pam-fi 1.13 // =============
444     // DB connection
445     // =============
446     void SetDBHost(TString str){host=str;};
447     void SetDBUser(TString str){user=str;};
448     void SetDBPsw(TString str){psw=str;};
449 pam-fi 1.24 TSQLServer* GetSQLServer(){return dbc;};
450     Bool_t SetDBConnection();
451 pam-fi 1.13
452 pam-fi 1.10 // ========================================================
453     // methods needed to retrieve subdetector general variables
454     // ========================================================
455 pam-fi 1.6 void* GetPointerTo(const char*);
456 pam-fi 1.15 EventHeader *GetEventHeader() { return h0_obj; };
457 pam-fi 1.24
458     /* TrkLevel0 *GetTrkLevel0() { return trk0_obj; }; */
459     /* CaloLevel0 *GetCaloLevel0() { return calo0_obj; }; */
460     TrkLevel0 *GetTrkLevel0();
461     CaloLevel0 *GetCaloLevel0();
462    
463 pam-fi 1.13
464     TrkLevel1 *GetTrkLevel1() { return trk1_obj; };
465     TrkLevel2 *GetTrkLevel2() { return trk2_obj; };
466     TrkHough *GetTrkHough() { return trkh_obj; };
467 pam-fi 1.10 CaloLevel1 *GetCaloLevel1() { return calo1_obj;};
468     CaloLevel2 *GetCaloLevel2() { return calo2_obj;};
469 pam-fi 1.13 ToFLevel2 *GetToFLevel2() { return tof_obj; };
470     TrigLevel2 *GetTrigLevel2() { return trig_obj; };
471     S4Level2 *GetS4Level2() { return s4_obj; };
472     NDLevel2 *GetNDLevel2() { return nd_obj; };
473     AcLevel2 *GetAcLevel2() { return ac_obj; };
474     OrbitalInfo *GetOrbitalInfo(){ return orb_obj; };
475     GL_RUN *GetRunInfo() { return run_obj; };
476 mocchiut 1.11 SoftInfo *GetSoftInfo() { return soft_obj; }; // Emiliano
477 pam-fi 1.34 GPamela *GetGPamela() { return gp_obj; };
478 pam-fi 1.3
479     // ==============================================
480     // methods to retrieve subdetectors stored tracks
481     // ==============================================
482 pam-fi 1.10 TrkTrack* GetTrkStoredTrack(int seqno){return trk2_obj->TrkLevel2::GetStoredTrack(seqno); };
483 pam-fi 1.6 CaloTrkVar* GetCaloStoredTrack(int);
484     ToFTrkVar* GetToFStoredTrack(int);
485     //
486     PamTrack* GetPamTrackAlong(TrkTrack*);
487 pam-fi 1.3 // PamTrack* GetPamTrackAlong(CaloTrkVar*); //se serve
488     // PamTrack* GetPamTrackAlong(ToFTrkVar*); //se serve
489    
490 pam-fi 1.1 // =================================
491     // methods to retrieve pamela tracks
492     // =================================
493 pam-fi 1.3 PamTrack* GetStoredTrack(Int_t);
494 pam-fi 1.6 //
495     void SortTracks(TString); //assign value to variable sorted_tracks
496 mocchiut 1.20 void SortTracks(); //assign value to variable sorted_tracks
497 pam-fi 1.10 // TRefArray* GetTracks(); //return sorted_tracks
498     TClonesArray* GetTracks(); //return sorted_tracks
499 pam-fi 1.6 PamTrack* GetTrack(int);
500 pam-fi 1.1 PamTrack* GetTrackImage(int);
501 mocchiut 1.20 void SetSortingMethod(TString how){ howtosort = how; return;};
502     TString GetSortingMethod(){return howtosort;};
503     void SetNucleiSortingThreshold(Float_t nucleithr){ sortthr = nucleithr; return;};
504     Float_t GetNucleiSortingThreshold(){ return sortthr;};
505 pam-fi 1.2
506 pam-fi 1.6 // =================================
507     // other methods
508     // =================================
509 pam-fi 1.10 // Int_t ntrk(){ return trk2_obj->TrkLevel2::ntrk(); };
510 pam-fi 1.6
511 pam-fi 1.33
512     Long64_t GetRunID(){ return irun;};
513     Long64_t GetRunEntryID(){ return irunentry; };
514    
515 pamela 1.14 // -----
516     // flags methods
517     // -----
518     Bool_t IsCAL2(){return CAL2;}; //level2 branch
519     Bool_t IsCAL1(){return CAL1;}; //level1 branch
520     Bool_t IsCAL0(){return CAL0;}; //yoda
521    
522     Bool_t IsTRK2(){return TRK2;}; //level2 branch
523     Bool_t IsTRK1(){return TRK1;}; //level1 branch
524     Bool_t IsTRKh(){return TRKh;}; //hough branch
525     Bool_t IsTRK0(){return TRK0;}; //yoda
526    
527     Bool_t IsTOF(){return TOF;};
528     Bool_t IsTOF0(){return TOF0;};
529    
530     Bool_t IsTRG(){return TRG;};
531     Bool_t IsS4(){return S4;};
532     Bool_t IsND(){return ND;};
533     Bool_t IsAC(){return AC;};
534     Bool_t IsORB(){return ORB;};
535    
536     Bool_t IsRUN(){return RUN;};
537    
538 mocchiut 1.22 Bool_t IsGood();
539    
540 pamela 1.14 Int_t IsSELLI(){return SELLI;}; //trees of selected events (there is a selection list)
541 pam-fi 1.6
542 pam-fi 1.25 Bool_t IsGP(){return ISGP;};
543    
544     void SetGP(Bool_t tt){ISGP=tt;};
545    
546 pam-fi 1.34 void SetDebug(Bool_t set){ DBG=set; };
547 pam-fi 1.25
548 pam-fi 1.1 ClassDef(PamLevel2,1);
549     };
550    
551     //===============================================================================================
552     //
553     //
554     //
555     //
556     //===============================================================================================
557    
558    
559     #endif
560    

  ViewVC Help
Powered by ViewVC 1.1.23