Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

AlignmentStripHistograms.h

Go to the documentation of this file.
00001 
00002 //
00003 //
00004 // AlignmentStripHistograms
00005 //
00006 // Package: DetectorAlignment
00007 //
00008 // An alignment engine's histograming class 
00009 //
00010 // Contact: rustem@fnal.gov
00011 //
00012 // Created: Tue Jul 26 11:40:05 2004
00013 //
00015 
00016 #ifndef ALIGNMENTSTRIPHISTOGRAMS_H
00017 #define ALIGNMENTSTRIPHISTOGRAMS_H
00018 
00019 //Local package headers
00020 #include "SubsetStat.h"
00021 
00022 //ROOT headers
00023 #include "Rtypes.h"
00024 
00025 class TH1D;
00026 class TDirectory;
00027 class TProfile;
00028 class AlignmentStrip;
00029 
00030 class AlignmentStripHistograms
00031 {
00032    
00033 public:
00034    
00035    AlignmentStripHistograms(TDirectory *ResidualDir,
00036                             TDirectory *ChargeDir,
00037                             TDirectory *AttenDir,
00038                             TDirectory *OccupancyDir,
00039                             TDirectory *RotResDir,
00040                             const AlignmentStrip &astrip);
00041    
00042    virtual ~AlignmentStripHistograms();
00043    
00044    void FillHistograms(const AlignmentStrip& astrip);
00045 
00046    TH1D* GetChargeHistogram() const {return fhCharge;};
00047    TH1D* GetChargePathCorrHistogram() const {return fhChargePathCorr;};
00048    TH1D* GetResidualHistogram() const {return fhResidual;};
00049    TH1D* GetOccupancyHistogram() const {return fhOccupancy;};
00050 
00051    TProfile* GetAttenHistogram() const {return fpAtten;};
00052    TProfile* GetAttenPigCorrHistogram() const {return fpAttenPigCorr;};
00053    TProfile* GetRotationalHistogram() const {return fpRotationalResidual;};
00054 
00055 private:
00056    
00057    TH1D* InitChargeHistogram(TDirectory *dir);
00058 
00059    TH1D* InitPathCorrChargeHistogram(TDirectory *dir);
00060 
00061    TH1D* InitResidualHistogram(TDirectory *dir);
00062 
00063    TH1D* InitOccupancyHistogram(TDirectory *dir);
00064 
00065    TProfile* InitAttenHistogram(TDirectory *dir);
00066 
00067    TProfile* InitRotResidualHistogram(TDirectory *dir);
00068 
00069    TProfile* InitPigtailAttenHistogram(TDirectory *dir);
00070 
00071    const int fPlane;
00072    const int fStrip;
00073    const UInt_t fPlexSEId;
00074    const double fLength;
00075    const double fPigTail;
00076 
00077    //TH1 histograms
00078    TH1D *fhCharge;
00079    TH1D *fhChargePathCorr; 
00080    TH1D *fhResidual; 
00081    TH1D *fhOccupancy;
00082 
00083    //TProfile histograms
00084    TProfile *fpAtten;
00085    TProfile *fpAttenPigCorr;
00086    TProfile *fpRotationalResidual;
00087 
00088    const Int_t fNChargeBins;
00089    const Int_t fNResidualBins;
00090 
00091    const Double_t fChargeLimit;
00092    const Double_t fResidualLimit;
00093    const Double_t fOccupancyBinWidth;
00094    const Double_t fAttenuationBinWidth;
00095    const Double_t fRotationalResidualBinWidth;
00096 };
00097 
00098 #endif //ALIGNMENTSTRIPHISTOGRAMS_H

Generated on Mon Feb 15 11:06:21 2010 for loon by  doxygen 1.3.9.1