/[PAMELA software]/DarthVader/CalorimeterLevel2/inc/CaloProcessing.h
ViewVC logotype

Diff of /DarthVader/CalorimeterLevel2/inc/CaloProcessing.h

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

revision 1.1 by mocchiut, Fri May 19 13:15:49 2006 UTC revision 1.6 by mocchiut, Tue Feb 13 16:55:06 2007 UTC
# Line 10  Line 10 
10  // YODA headers  // YODA headers
11  //  //
12  #include <PamelaRun.h>  #include <PamelaRun.h>
 #include <RegistryEvent.h>  
13  #include <physics/calorimeter/CalorimeterEvent.h>  #include <physics/calorimeter/CalorimeterEvent.h>
14  #include <CalibCalPedEvent.h>  #include <CalibCalPedEvent.h>
15  //  //
16  #include <CaloCore.h>  #include <CaloCore.h>
17    #include <CaloLevel1.h>
18  #include <CaloLevel2.h>  #include <CaloLevel2.h>
19    
20  /**  /**
# Line 28  class CaloProcessing : public TObject { Line 28  class CaloProcessing : public TObject {
28   private:   private:
29      Bool_t debug; ///< debugging flag      Bool_t debug; ///< debugging flag
30      Bool_t verbose; ///< verbose flag      Bool_t verbose; ///< verbose flag
31        Bool_t crosst;
32      //      //
33      // variables in which it is stored the calibration information for the four sections      // variables in which it is stored the calibration information for the four sections
34      //      //
35      ULong64_t idcalib[4]; ///< ID of root file containing calibrations (one per section)      UInt_t idcalib[4]; ///< ID of root file containing calibrations (one per section)
36      ULong64_t fromtime[4]; ///< lower validity time limit      UInt_t fromtime[4]; ///< lower validity time limit
37      ULong64_t totime[4]; ///< upper validity time limit      UInt_t totime[4]; ///< upper validity time limit
38      Int_t calibno[4]; ///< entry of the file      Int_t calibno[4]; ///< entry of the file
39      TString fcalname[4]; ///< filename of calibrations      TString fcalname[4]; ///< filename of calibrations
40      //      //
# Line 65  class CaloProcessing : public TObject { Line 66  class CaloProcessing : public TObject {
66      // Energy vector      // Energy vector
67      //      //
68      Int_t istrip; ///< number of strip above threshold      Int_t istrip; ///< number of strip above threshold
69      Float_t svstrip[4224]; ///< saved calibrated energy      Int_t svstrip[4224]; ///< saved calibrated energy
     //  
     // Empty structs to clear faster vectors and arrays  
     //  
     struct FlCaLevel1 *e_clevel1; ///< input structure  
     struct FlCaLevel2 *e_clevel2; ///< output structure  
70      //      //
71      // Variables needed to handle parameters files      // Variables needed to handle parameters files
72      //      //
73      Bool_t calopar1; ///< boolean, is true if parameter set number 1 has already been loaded      Bool_t calopar1; ///< boolean, is true if parameter set number 101 has already been loaded
74      Bool_t calopar2; ///< boolean, is true if parameter set number 2 has already been loaded      Bool_t calopar2; ///< boolean, is true if parameter set number 102 has already been loaded
75      ULong64_t ftcalopar1; ///< parameter set 1 lower limit validity      Bool_t calopar3; ///< boolean, is true if parameter set number 103 has already been loaded
76      ULong64_t ttcalopar1; ///< parameter set 1 upper limit validity      UInt_t ftcalopar1; ///< parameter set 101 lower limit validity
77      ULong64_t ftcalopar2; ///< parameter set 2 lower limit validity      UInt_t ttcalopar1; ///< parameter set 101 upper limit validity
78      ULong64_t ttcalopar2; ///< parameter set 2 upper limit validity      UInt_t ftcalopar2; ///< parameter set 102 lower limit validity
79        UInt_t ttcalopar2; ///< parameter set 102 upper limit validity
80        UInt_t ftcalopar3; ///< parameter set 103 lower limit validity
81        UInt_t ttcalopar3; ///< parameter set 103 upper limit validity
82      //      //
83      // private methods      // private methods
84      //      //
# Line 90  class CaloProcessing : public TObject { Line 89  class CaloProcessing : public TObject {
89      void ClearCommonVar(); ///< clear common variables      void ClearCommonVar(); ///< clear common variables
90      void ClearTrkVar();  ///< clear track-related variables      void ClearTrkVar();  ///< clear track-related variables
91      void FindBaseRaw(Int_t l, Int_t m, Int_t pre); ///< calculate baselines starting from RAW data      void FindBaseRaw(Int_t l, Int_t m, Int_t pre); ///< calculate baselines starting from RAW data
92      Int_t Update(TSQLServer *dbc, ULong64_t atime, Int_t s); ///< update calibration for this event      Int_t Update(TSQLServer *dbc, UInt_t atime, Int_t s); ///< update calibration for this event
93      Int_t LoadCalib(Int_t s); ///< load calibrations      Int_t LoadCalib(Int_t s); ///< load calibrations
94    
95   public:   public:
# Line 98  class CaloProcessing : public TObject { Line 97  class CaloProcessing : public TObject {
97      // ADC to MIP conversion values      // ADC to MIP conversion values
98      //      //
99      Float_t mip[2][22][96]; ///< ADC to MIP conversion values      Float_t mip[2][22][96]; ///< ADC to MIP conversion values
100        Int_t obadmask[2][22][96]; ///< Offline mask of bad strips (not used to calculate baselines and calorimeter variables)      
101      Float_t emin; ///< Offline threshold to separate noise from signal      Float_t emin; ///< Offline threshold to separate noise from signal
102      //      //
103      // Structures to pass data from/to F77      // Structures to pass data from/to F77
# Line 111  class CaloProcessing : public TObject { Line 111  class CaloProcessing : public TObject {
111      //      //
112      // useful methods      // useful methods
113      //      //
114      Int_t ChkParam(TSQLServer *dbc, ULong64_t runheader); ///< check and load parameters data      Int_t ChkParam(TSQLServer *dbc, UInt_t runheader); ///< check and load parameters data
115      Int_t ChkCalib(TSQLServer *dbc, ULong64_t atime); ///< check and load calibration data      Int_t ChkCalib(TSQLServer *dbc, UInt_t atime); ///< check and load calibration data
116      Int_t Calibrate(Int_t ei); ///< perform data calibration      Int_t Calibrate(Int_t ei); ///< perform data calibration
117      void GetCommonVar(); ///< call fortran common variables program      void GetCommonVar(); ///< call fortran common variables program
118      void GetTrkVar(); ///< call fortran track-related variables program      void GetTrkVar(); ///< call fortran track-related variables program
119      void ClearStructs(); ///< clear input and output structures      void ClearStructs(); ///< clear input and output structures
120      void FillCommonVar(CaloLevel2 *ca); ///< copy common variables from structure to class      void FillCommonVar(CaloLevel1 *c1, CaloLevel2 *ca); ///< copy common variables from structure to class
121      void FillTrkVar(CaloLevel2 *ca, Int_t nutrk); ///< copy track-related variables from structure to class      void FillTrkVar(CaloLevel2 *ca, Int_t nutrk); ///< copy track-related variables from structure to class
122      void RunClose(); ///< clear variables which could change from one run to another      void RunClose(); ///< clear variables which could change from one run to another
123        void SetCrossTalk(Bool_t ct);
124      //      //
125      // constructor      // constructor
126      //      //
127      CaloProcessing(); ///< contructor      CaloProcessing(); ///< contructor
128          void ProcessingInit(TSQLServer *dbc, ULong64_t hs, Int_t &sgnl, TTree *l0tree, Bool_t debug, Bool_t verbose); ///< initialize caloprocessing object      void ProcessingInit(TSQLServer *dbc, UInt_t hs, Int_t &sgnl, TTree *l0tree, Bool_t debug, Bool_t verbose); ///< initialize caloprocessing object
129      //      //
130      // virtual destructor      // virtual destructor
131      //      //
132      virtual ~CaloProcessing();      virtual ~CaloProcessing();///< virtual destructor
133      //      //
134  };  };
135    

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

  ViewVC Help
Powered by ViewVC 1.1.23