CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch12/src/CalibCalorimetry/EcalCorrelatedNoiseAnalysisAlgos/src/TEcnaHeader.cc

Go to the documentation of this file.
00001 //----------Author's Name:FX Gentit and B.Fabbro  DSM/IRFU/SPP CEA-Saclay
00002 //----------Copyright:Those valid for CEA software
00003 //----------Modified:17/03/2010
00004 
00005 #include "CalibCalorimetry/EcalCorrelatedNoiseAnalysisAlgos/interface/TEcnaHeader.h"
00006 
00007 ClassImp(TEcnaHeader)
00008   //____________________________________________________________________________
00009 
00010   TEcnaHeader::TEcnaHeader(){Init();} // constructor without arguments
00011 TEcnaHeader::TEcnaHeader(const Text_t* name, const Text_t* title):TNamed(name,title)
00012 {
00013   // Constructor with arguments for reading ROOT file.
00014   // Called in GetReadyToReadRootFile(...) of TEcnaRead
00015   // Please give a name and a title containing info about what
00016   // you are doing and saving in the ROOT file
00017   // cout << "[Info Management] CLASS: TEcnaHeader.        CREATE OBJECT: this = " << this << endl;
00018   
00019   Init();
00020 }
00021 
00022 TEcnaHeader::~TEcnaHeader() {
00023   //destructor
00024 
00025  // cout << "[Info Management] CLASS: TEcnaHeader.        DESTROY OBJECT: this = " << this << endl;
00026 }
00027 
00028 void TEcnaHeader::Init()
00029 {
00030  //Set default values in all variables and init the counters fxxxCalc
00031 
00032   //--------------------------------- INIT parameters
00033 
00034   fgMaxCar = (Int_t)512;
00035 
00036   //........................ RUN parameters
00037 
00038   fTypAna            = "!Analysis name> no info";
00039   fNbOfSamples       = (Int_t)0;
00040   fRunNumber         = (Int_t)0;
00041   fFirstReqEvtNumber = (Int_t)0;
00042   fLastReqEvtNumber  = (Int_t)0;
00043   fReqNbOfEvts       = (Int_t)0;
00044   fStex              = (Int_t)0;
00045 
00046   fStartTime     = (time_t)0;
00047   fStopTime      = (time_t)0;
00048 
00049   Int_t MaxCar = fgMaxCar;
00050   fStartDate.Resize(MaxCar);
00051   fStartDate     = "!Start date> no info";
00052   MaxCar = fgMaxCar;
00053   fStopDate.Resize(MaxCar);
00054   fStopDate      = "!Stop  date> no info";
00055 
00056   fRunType = 9999999;
00057 
00058   //--------------------------------- INIT counters
00059   fStinNumbersCalc  = 0;
00060   fNbOfEvtsCalc     = 0;
00061   fAdcEvtCalc       = 0;
00062   fMSpCalc          = 0;
00063   fSSpCalc          = 0;
00064 
00065   fCovCssCalc       = 0;
00066   fCorCssCalc       = 0;
00067   fHfCovCalc        = 0;
00068   fHfCorCalc        = 0;
00069   fLfCovCalc        = 0;
00070   fLfCorCalc        = 0;
00071   fLFccMoStinsCalc  = 0;
00072   fHFccMoStinsCalc  = 0;
00073   fPedCalc          = 0;
00074   fTnoCalc          = 0;
00075   fMeanCorssCalc    = 0;
00076   fLfnCalc          = 0;
00077   fHfnCalc          = 0;
00078   fSigCorssCalc     = 0;
00079 
00080   fAvPedCalc        = 0;
00081   fAvTnoCalc        = 0;
00082   fAvLfnCalc        = 0;
00083   fAvHfnCalc        = 0;
00084   fAvMeanCorssCalc  = 0;
00085   fAvSigCorssCalc   = 0;
00086 }
00087 // ------------ end of Init() ------------
00088 
00089 void TEcnaHeader::HeaderParameters(TString      typ_ana,           const Int_t& nb_of_samples,
00090                                    const Int_t& run_number,        const Int_t& aFirstReqEvtNumber,
00091                                    const Int_t& aLastReqEvtNumber, const Int_t& aReqNbOfEvts,
00092                                    const Int_t& Stex,              const Int_t& run_type
00093                                    )
00094 {
00095   // Constructor with arguments for reading DATA.
00096   // Called in GetReadyToReadData(...) of TEcnaRun
00097   // Please give a name and a title containing info about what
00098   // you are doing and saving in the ROOT file
00099  
00100  // cout << "[Info Management] CLASS: TEcnaHeader.        CREATE OBJECT: this = " << this << endl;
00101 
00102   fTypAna            = typ_ana;
00103   fRunNumber         = run_number;
00104   fNbOfSamples       = nb_of_samples;
00105   fFirstReqEvtNumber = aFirstReqEvtNumber;
00106   fLastReqEvtNumber  = aLastReqEvtNumber;
00107   fReqNbOfEvts       = aReqNbOfEvts;
00108   fStex              = Stex;
00109 
00110   fRunType     = run_type;
00111 }
00112 //------------------------------------------------------------------------------
00113 
00114 void TEcnaHeader::HeaderParameters(TString      typ_ana,           const Int_t& nb_of_samples,
00115                                    const Int_t& run_number,        const Int_t& aFirstReqEvtNumber,
00116                                    const Int_t& aLastReqEvtNumber, const Int_t& aReqNbOfEvts,
00117                                    const Int_t& Stex)
00118  {
00119  // cout << "[Info Management] CLASS: TEcnaHeader.        CREATE OBJECT: this = " << this << endl;
00120 
00121 
00122   fTypAna            = typ_ana;
00123   fRunNumber         = run_number;
00124   fNbOfSamples       = nb_of_samples;
00125   fFirstReqEvtNumber = aFirstReqEvtNumber;
00126   fLastReqEvtNumber  = aLastReqEvtNumber;
00127   fReqNbOfEvts       = aReqNbOfEvts;
00128   fStex              = Stex;
00129 }
00130 
00131 void TEcnaHeader::Print() {
00132   // Print the header
00133   cout << endl;
00134   cout << "     Header parameters " << endl;
00135   cout << endl;
00136   cout << "Run number                   : " << fRunNumber         << endl;
00137   cout << "First requested event number : " << fFirstReqEvtNumber << endl;
00138   cout << "Last requested event number  : " << fLastReqEvtNumber  << endl;
00139   cout << "Requested number of events   : " << fReqNbOfEvts       << endl;
00140   cout << "Stex number                  : " << fStex              << endl;
00141   cout << "Time first event             : " << fStartTime         << endl;
00142   cout << "Time last event              : " << fStopTime          << endl;
00143   cout << "Date first event             : " << fStartDate.Data()  << endl;
00144   cout << "Date last event              : " << fStopDate.Data()   << endl;
00145   cout << "Run type                     : " << fRunType           << endl;
00146   cout << endl;
00147   cout << "     Header counters " << endl;
00148   cout << endl;
00149   cout << "Stin Numbers                                 : "
00150        << fStinNumbersCalc << endl;
00151   cout << "Numbers of found evts                        : "
00152        << fNbOfEvtsCalc << endl;
00153   cout << "Samples as a function of time histograms     : "
00154        << fAdcEvtCalc << endl;
00155   cout << "Expectation values histogram                 : "
00156        << fMSpCalc    << endl;
00157   cout << "Variances histogram                          : "
00158        << fSSpCalc   << endl;
00159   cout << "Averaged total noise                         : "
00160        << fAvTnoCalc  << endl;
00161   cout << "Averaged low frequency noise                 : "
00162        << fAvLfnCalc  << endl;
00163   cout << "Averaged high frequency noise                : "
00164        << fAvHfnCalc  << endl;
00165 
00166   cout << "Nb of (sample,sample) covariance  matrices   : "
00167        << fCovCssCalc << endl;
00168   cout << "Nb of (sample,sample) correlation matrices   : "
00169        << fCorCssCalc << endl;
00170   cout << "Nb of (channel,channel) covariance  matrices : "
00171        << fHfCovCalc << endl;
00172   cout << "Nb of (channel,channel) correlation matrices : "
00173        << fHfCorCalc << endl;
00174   cout << "Nb of (channel,channel) cov mat mean on samp : "
00175        << fLfCovCalc << endl;
00176   cout << "Nb of (channel,channel) cor mat mean on samp : "
00177        << fLfCorCalc << endl;
00178   cout << "Nb of mean cov(c,c) mean on samp, all Stins  : "
00179        << fLfCovCalc << endl;
00180   cout << "Nb of mean cor(c,c) mean on samp, all Stins  : "
00181        << fLfCorCalc << endl;
00182 
00183   cout << "Exp. val. of the exp. val. of the samples    : "
00184        << fPedCalc     << endl;
00185   cout << "Expect. val. of the sigmas of the samples    : "
00186        << fTnoCalc    << endl;
00187   cout << "Expect. val. of the (samp,samp) correlations : "
00188        << fMeanCorssCalc << endl;
00189 
00190   cout << "Sigmas of the exp. val. of the samples       : "
00191        << fLfnCalc     << endl;
00192   cout << "Sigmas of the sigmas of the samples          : "
00193        << fHfnCalc     << endl;
00194   cout << "Sigmas of the (samp,samp) correlations       : "
00195        << fSigCorssCalc     << endl;
00196 
00197   cout << "Averaged pedestals                           : "
00198        << fAvPedCalc  << endl;
00199   cout << "Averaged Mean of Cor(s,s)                    : "
00200        << fAvMeanCorssCalc << endl;
00201   cout << "Averaged sigma of Cor(s,s)                   : "
00202        << fAvSigCorssCalc << endl;
00203   cout << endl;
00204 }