X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSPlaneEff.h;h=9aba39c15dc62aff8a153d1a217fb1b60767420b;hb=f9e8ab3f271bf55b2cd5af36ed6a0bc321dade91;hp=cd69a6f797423b316dc2df416d7edf39f5e38fa5;hpb=6344adccca6954adb6dd4cc566b3703fcce0ed94;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSPlaneEff.h b/ITS/AliITSPlaneEff.h index cd69a6f7974..9aba39c15dc 100644 --- a/ITS/AliITSPlaneEff.h +++ b/ITS/AliITSPlaneEff.h @@ -3,8 +3,8 @@ /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ -#include #include +#include "AliPlaneEff.h" #include "AliLog.h" class AliITSsegmentation; @@ -18,19 +18,18 @@ class AliITSgeom; // // //////////////////////////////////////////////////// -/* $Id$ */ +/* $Id:$ */ -class AliITSPlaneEff : public TObject { +class AliITSPlaneEff : public AliPlaneEff { public: AliITSPlaneEff();// Default constructor // Standard constructor - //AliITSPlaneEff(AliITSDetTypeSim *dettyp); virtual ~AliITSPlaneEff(){;}; // copy constructor. See detector specific implementation. AliITSPlaneEff(const AliITSPlaneEff &source); // Assignment operator. See detector specific implementation. - virtual AliITSPlaneEff& operator=(const AliITSPlaneEff &source); + AliITSPlaneEff& operator=(const AliITSPlaneEff &source); // Simple way to add another class (i.e. statistics). //AliITSPlaneEff& operator +=( const AliITSPlaneEff &){return *this}; // Average Plane efficiency (including dead/noisy) @@ -41,6 +40,8 @@ class AliITSPlaneEff : public TObject { Double_t ErrPlaneEff(Int_t nfound,Int_t ntried) const; virtual void GetPlaneEff(Int_t nfound,Int_t ntried,Double_t &eff, Double_t &err) const {eff=PlaneEff(nfound,ntried); err=ErrPlaneEff(nfound,ntried); return;}; + // + virtual Double_t PlaneEff(const UInt_t key) const=0; // Plane efficiency for active detector (excluding dead/noisy channels) virtual Double_t LivePlaneEff(UInt_t) const {AliWarning("This method gives just a rough estimate of the live-Det Efficiency!"); @@ -66,6 +67,25 @@ class AliITSPlaneEff : public TObject { {AliError("This method must be implemented in a derived class"); return kFALSE;}; virtual Bool_t AddFromCDB() {AliError("This method must be implemented in a derived class"); return kFALSE;}; + // method to locate a basic block from Detector Local coordinate + virtual UInt_t GetKeyFromDetLocCoord(Int_t, Int_t, Float_t, Float_t) const + {AliError("This method must be implemented in a derived class"); return 999999;}; + virtual UInt_t Nblock() const // return the number of basic blocks + {AliError("This method must be implemented in a derived class"); return 999999;}; + virtual Bool_t GetBlockBoundaries(const UInt_t,Float_t&,Float_t&,Float_t&,Float_t&) const + {AliError("This method must be implemented in a derived class"); return kFALSE;}; + // Methods for dealing with auxiliary histograms + // method to set on/off the creation/updates of histograms (Histos are created/destroyed) + virtual void SetCreateHistos(Bool_t) + {AliError("This method must be implemented in a derived class"); return; } + virtual Bool_t GetCreateHistos() const {return fHis;}; + //virtual Bool_t FillHistos(UInt_t, Bool_t, Float_t[2], Float_t[2], Int_t[2]) + virtual Bool_t FillHistos(UInt_t, Bool_t, Float_t*, Float_t*, Int_t*) + {AliError("This method must be implemented in a derived class"); return kFALSE; } + virtual Bool_t WriteHistosToFile(TString ,Option_t*) + {AliError("This method must be implemented in a derived class"); return kFALSE; } + virtual Bool_t ReadHistosFromFile(TString ) + {AliError("This method must be implemented in a derived class"); return kFALSE; } protected: @@ -76,6 +96,7 @@ class AliITSPlaneEff : public TObject { Int_t fRunNumber; //! run number (to access CDB) TString fCDBUri; //! Uri of the default CDB storage Bool_t fInitCDBCalled; //! flag to check if CDB storages are already initialized + Bool_t fHis; //! if true, then histograms are created and filled private: //Int_t* fFound; // number of associated clusters into a given block (e.g. SPD 1200 chip)