/[PAMELA software]/DarthVader/TrackerLevel2/inc/TrkParams.h
ViewVC logotype

Diff of /DarthVader/TrackerLevel2/inc/TrkParams.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by pam-fi, Fri Feb 16 14:56:00 2007 UTC revision 1.8 by pam-fi, Wed Aug 22 07:03:44 2007 UTC
# Line 19  Line 19 
19  /**  /**
20   * \brief Class to store tracker parameter information   * \brief Class to store tracker parameter information
21   *   *
22     * Tracker parameters include calibration parameters (PED, SIG and BAD),
23     * parameters loaded from DB (alignment, ADC-to-mip, etc. ) and some parameters
24     * to configure tracker processing (PFA, ecc...).
25     *
26     * Calibrations can be either those evaluated online or default values.
27     * External parameter are labelled according to the DB convention:
28     *
29     * type  description
30     * -----------------
31     * 1     field
32     * 2     adc-to-mip
33     * 3     charge-correlation
34     * 4     p.f.a. (eta)
35     * 5     alignment
36     * 6     VA1 mask
37     * 7     default calibration
38     *
39     * Internal parameters are initialized to default values
40    *
41     * TrkParams::SetCalib(...) and TrkParams::Set(...) methods allow to set
42     * required parameters, from an input path, from the DB (for a given input
43     * run id) and from environment variable PAM_CALIB.
44     * TrkParams::LoadCalib() and TrkParams::Load() methods load parameters into
45     * F77 common.
46     *
47     * Tracker libraries (TrkLevel0, TrkLevel1 and TrkLevel2) implement automatic
48     * setting (either from DB or from environment variables) and loading of parameters.
49     * If one needs to load custom parameters, it is enough to call TrkParams::Set(...)
50     * with proper arguments. All the methods are static, and can be used as standalone functions.
51     *
52     * For example:
53     *
54     * TrkParams::Set("/param-path/new-mip-param/",2);
55     *
56     * After this instruction (to be called once), new adc-to-mip conversion parameters
57     * will be loaded automatically (once) and used until the next set instruction
58   */   */
59  class TrkParams : public TObject {  class TrkParams : public TObject {
60    
# Line 43  public: Line 79  public:
79      static GL_PARAM  gl[NTYPES];      static GL_PARAM  gl[NTYPES];
80      static TString   glpath[NTYPES];      static TString   glpath[NTYPES];
81      static Bool_t    glload[NTYPES];      static Bool_t    glload[NTYPES];
82            // -----------------------------------------------
83        // some parameters to configure tracker processing
84        // -----------------------------------------------
85        static int init__pfa;
86        static int init__mini_trackmode;
87        static int init__mini_istepmin;
88        static double init__mini_fact;
89        static cDbg init__dbg_mode; //debug mode (for both c++ and F77 roiutines)
90        static float init__pfa_e234ax[6]; // angle intervals for eta2-3-4
91        static float init__pfa_e234ay[6]; // angle intervals for eta2-3-4
92    
93      TrkParams();      TrkParams();
94            
95      // ---------------------------------------------      // ---------------------------------------------
# Line 52  public: Line 98  public:
98      static Bool_t SetCalib( GL_RUN* , TSQLServer*  );      static Bool_t SetCalib( GL_RUN* , TSQLServer*  );
99      static Bool_t LoadCalib( );      static Bool_t LoadCalib( );
100      static Bool_t CalibIsLoaded(){ return calibload; };      static Bool_t CalibIsLoaded(){ return calibload; };
101        static UInt_t ValidateTrkCalib( CalibTrk1Event* );
102      static void FillFCalibFrom(TFile* , Int_t , Int_t );//full      static void FillFCalibFrom(TFile* , Int_t , Int_t );//full
103      static void FillTCalibFrom(TFile* , Int_t , Int_t );//truncated      static void FillTCalibFrom(TFile* , Int_t , Int_t );//truncated
104      static void FillTCalibFrom(TString path);      static void FillTCalibFrom(TString path);
# Line 75  public: Line 122  public:
122      static Bool_t IsLoaded( UInt_t type ){return glload[TrkParams::GetIndex(type)];};      static Bool_t IsLoaded( UInt_t type ){return glload[TrkParams::GetIndex(type)];};
123      static Bool_t IsLoaded( );      static Bool_t IsLoaded( );
124    
125      ClassDef(TrkParams,1);      // ---------------------------------------------
126        // retrieve parameters
127        // ---------------------------------------------
128        static float GetBX(float*);
129        static float GetBY(float*);
130        static float GetBZ(float*);
131        static float GetResolution(int,float);
132        static int   GetPFA(){return sw_.pfaid;};
133    
134        // ---------------------------------------------
135        // debug mode
136        // ---------------------------------------------
137    
138        static void SetDebugMode()  {init__dbg_mode.SetDebug();   dbg_=init__dbg_mode;};
139        static void SetVerboseMode(){init__dbg_mode.SetVerbose(); dbg_=init__dbg_mode;};
140        static void SetWarningMode(){init__dbg_mode.SetWarning(); dbg_=init__dbg_mode;};    
141        static void SetQuietMode()  {init__dbg_mode.SetNone();    dbg_=init__dbg_mode;};    
142        static Bool_t DebugMode(){return init__dbg_mode.debug;};
143        static Bool_t WarningMode(){return init__dbg_mode.warning;};
144        static Bool_t VerboseMode(){return init__dbg_mode.verbose;};
145    
146        // ------------------------------------------------
147        // alcuni metodi che non sapevo dove mettere
148        // per inizializzare alcune variabili in F77 common
149        // ------------------------------------------------    
150        // set to default values
151        static void SetTrackingMode()   {track_.trackmode = init__mini_trackmode;};
152        static void SetPrecisionFactor(){track_.fact      = init__mini_fact;     };
153        static void SetStepMin()        {track_.istepmin  = init__mini_istepmin; };
154        // set to custom values
155        static void SetTrackingMode(int);
156        static void SetPrecisionFactor(double);
157        static void SetStepMin(int);
158        static void SetPFA(int);
159        static void SetPFA(float *);
160        static void SetPFA(void);
161        
162        ClassDef(TrkParams,2);
163    
164  };  };
165    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.8

  ViewVC Help
Powered by ViewVC 1.1.23