/[PAMELA software]/tracker/flight/TrkNuclei/inc/TrkNuclei.h
ViewVC logotype

Annotation of /tracker/flight/TrkNuclei/inc/TrkNuclei.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Tue Jan 20 10:29:57 2009 UTC (15 years, 10 months ago) by pam-fi
Branch point for: MAIN, tracker
File MIME type: text/plain
Initial revision

1 pam-fi 1.1 #ifndef trknuclei_h
2     #define trknuclei_h
3    
4    
5     #if !defined(__CINT__) || defined(__MAKECINT__)
6    
7     #include <PamLevel2.h>
8    
9     #include <TF2.h>
10     #include <TGraph.h>
11     #include <TMath.h>
12     #include <TSpline.h>
13     #include <stdlib.h>
14    
15    
16     #include <iostream>
17     #include <iomanip>
18     using namespace std;
19    
20     #endif
21     ///////////////////////////////////////////////////
22     ///
23     ///
24     /// CLASS FOR INITIALIZATIONS & PARAMETERS
25     ///
26     ///
27     ///////////////////////////////////////////////////
28    
29     class TrkNuclei_parameters : public TObject{
30    
31     private:
32    
33     TrkNuclei_parameters(){ SetDefault(); };
34    
35     static TrkNuclei_parameters * _parameters;
36    
37     public:
38    
39     static TrkNuclei_parameters *Get(){
40     if(_parameters==0) {
41     // cout << "**NEW**"<<endl;
42     _parameters = new TrkNuclei_parameters();
43     }
44     return _parameters;
45     }
46    
47     // ----------
48     // PARAMETERS
49     // ----------
50     TF2 *charge_vs_beta;
51     TF2 *charge_vs_rig;
52    
53    
54     bool SetZ_Beta( TF2* f );
55     bool SetZ_Beta( const char* formula );
56     TF2 *GetZ_Beta(){return charge_vs_beta;};
57    
58     bool SetZ_Rigidity( TF2* f );
59     bool SetZ_Rigidity( const char* formula );
60     TF2 *GetZ_Rigidity(){return charge_vs_rig;};
61    
62     void SetDefault();
63    
64     void Delete();
65    
66     ClassDef(TrkNuclei_parameters,1);
67    
68     };
69     ///////////////////////////////////////////////////
70     ///
71     ///
72     /// CLASS INPLEMENTATION
73     ///
74     ///
75     ///////////////////////////////////////////////////
76     class TrkNuclei : public TObject{
77    
78     private:
79    
80     /* float dedx_x[6]; */
81     /* float dedx_y[6]; */
82     /* int maxs_x[6]; */
83     /* int maxs_y[6]; */
84    
85     TrkTrack *nutrk;
86    
87     public:
88    
89    
90     TrkNuclei(){ Reset(); };
91     TrkNuclei(PamLevel2 *l2, int ntr){ Reset(); Set(l2,ntr); };
92     TrkNuclei(PamTrack* trk){ Reset(); Set(trk); };
93     TrkNuclei(TrkTrack *trk){ Reset(); Set(trk); };
94    
95     ~TrkNuclei(){ Reset(); };
96    
97     void Reset();
98     void Clear(){ Reset(); };
99     void Delete(){ Reset(); };
100    
101     TrkTrack *GetTrkTrack(){ return nutrk; };
102    
103     bool Set(TrkTrack*);
104     bool Set(PamTrack*);
105     bool Set(PamLevel2*,int);
106    
107    
108     Float_t GetZ_Beta(int ip, int iv, float beta);
109     Float_t GetZ_Beta(int ip, float beta);
110     Float_t GetZ_Beta(float beta);
111    
112     Float_t GetZ_Rigidity(int ip, int iv, float rig);
113     Float_t GetZ_Rigidity(int ip, float rig);
114     Float_t GetZ_Rigidity(float rig);
115     Float_t GetZ_Rigidity(int ip, int iv){return GetZ_Rigidity(ip,iv,nutrk->GetRigidity());};
116     Float_t GetZ_Rigidity(int ip){return GetZ_Rigidity(ip,nutrk->GetRigidity());};
117     Float_t GetZ_Rigidity(){return GetZ_Rigidity(nutrk->GetRigidity());};
118    
119     ClassDef(TrkNuclei,1);
120    
121     };
122     #endif

  ViewVC Help
Powered by ViewVC 1.1.23