Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:57:36

0001 #ifndef ZTR_TEcnaObject
0002 #define ZTR_TEcnaObject
0003 
0004 #include <Riostream.h>
0005 #include "TObject.h"
0006 #include "TSystem.h"
0007 
0008 #include "TString.h"
0009 
0010 ///-----------------------------------------------------------
0011 ///   TEcnaObject.h
0012 ///   Update: 05/10/2012
0013 ///   Author:    B.Fabbro (bernard.fabbro@cea.fr)
0014 ///              DSM/IRFU/SPP CEA-Saclay
0015 ///   Copyright: Those valid for CEA sofware
0016 ///
0017 ///   ECNA web page:
0018 ///     http://cms-fabbro.web.cern.ch/cms-fabbro/
0019 ///     cna_new/Correlated_Noise_Analysis/ECNA_main_page.htm
0020 ///-----------------------------------------------------------
0021 ///
0022 ///   ECNA object management
0023 ///
0024 
0025 class TEcnaObject : public TObject {
0026 private:
0027   //..... Attributes
0028 
0029   Int_t fgMaxCar;
0030 
0031   TString fTTBELL;
0032 
0033   //................................ Pointer values (cast Long_t)
0034   Long_t fObjectTEcnaGui;
0035   Long_t fObjectTEcnaHeader;
0036   Long_t fObjectTEcnaHistos;
0037   Long_t fObjectTEcnaNArrayD;
0038   Long_t fObjectTEcnaNumbering;
0039   Long_t fObjectTEcnaParCout;
0040   Long_t fObjectTEcnaParEcal;
0041   Long_t fObjectTEcnaParHistos;
0042   Long_t fObjectTEcnaParPaths;
0043   Long_t fObjectTEcnaRead;
0044   Long_t fObjectTEcnaResultType;
0045   Long_t fObjectTEcnaRootFile;
0046   Long_t fObjectTEcnaRun;
0047   Long_t fObjectTEcnaWrite;
0048 
0049   //................................ Object creation counter
0050   Int_t fCounterCreateTEcnaGui;
0051   Int_t fCounterCreateTEcnaHeader;
0052   Int_t fCounterCreateTEcnaHistos;
0053   Int_t fCounterCreateTEcnaNArrayD;
0054   Int_t fCounterCreateTEcnaNumbering;
0055   Int_t fCounterCreateTEcnaParCout;
0056   Int_t fCounterCreateTEcnaParEcal;
0057   Int_t fCounterCreateTEcnaParHistos;
0058   Int_t fCounterCreateTEcnaParPaths;
0059   Int_t fCounterCreateTEcnaRead;
0060   Int_t fCounterCreateTEcnaResultType;
0061   Int_t fCounterCreateTEcnaRootFile;
0062   Int_t fCounterCreateTEcnaRun;
0063   Int_t fCounterCreateTEcnaWrite;
0064 
0065   //................................ Object re-using counter
0066   Int_t fCounterReusingTEcnaGui;
0067   Int_t fCounterReusingTEcnaHeader;
0068   Int_t fCounterReusingTEcnaHistos;
0069   Int_t fCounterReusingTEcnaNArrayD;
0070   Int_t fCounterReusingTEcnaNumbering;
0071   Int_t fCounterReusingTEcnaParCout;
0072   Int_t fCounterReusingTEcnaParEcal;
0073   Int_t fCounterReusingTEcnaParHistos;
0074   Int_t fCounterReusingTEcnaParPaths;
0075   Int_t fCounterReusingTEcnaRead;
0076   Int_t fCounterReusingTEcnaResultType;
0077   Int_t fCounterReusingTEcnaRootFile;
0078   Int_t fCounterReusingTEcnaRun;
0079   Int_t fCounterReusingTEcnaWrite;
0080 
0081 public:
0082   //..... Methods
0083 
0084   TEcnaObject();
0085   ~TEcnaObject() override;
0086 
0087   void Init();
0088 
0089   Bool_t RegisterPointer(const TString&, const Long_t&);
0090   Long_t GetPointerValue(const TString&);
0091   void NumberCreateObjectMessage(const TString&, const Long_t&, const Int_t&);
0092   void NumberReuseObjectMessage(const TString&, const Long_t&, const Int_t&);
0093 
0094   ClassDefOverride(TEcnaObject, 1)  // Parameter management for CNA (Correlated Noises Analysis)
0095 };
0096 
0097 #endif  //    ZTR_TEcnaObject