X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ZDC%2FAliZDC.h;h=bbd1dc218c1a9f316ed9d1301f8ce08c47199b11;hb=f8fa4595db0ba0c2e08f2d4106f4cb833545d0e8;hp=28c0f60c17a6ce53abaf43bae15e49723fb78043;hpb=09630792df5d55b48a3c4a598afb2ddaa05650a0;p=u%2Fmrichter%2FAliRoot.git diff --git a/ZDC/AliZDC.h b/ZDC/AliZDC.h index 28c0f60c17a..bbd1dc218c1 100644 --- a/ZDC/AliZDC.h +++ b/ZDC/AliZDC.h @@ -8,9 +8,14 @@ //////////////////////////////////////////////// // Manager and classes for set ZDC // //////////////////////////////////////////////// - + +#include + #include "AliDetector.h" +#include "AliZDCTrigger.h" +class AliZDCPedestals; +class AliZDCCalib; class AliZDC : public AliDetector { @@ -18,31 +23,64 @@ public: AliZDC(); AliZDC(const char *name, const char *title); virtual ~AliZDC(); + AliZDC(const AliZDC&); + // virtual void AddHit(Int_t track, Int_t *vol, Float_t *hits); virtual void BuildGeometry(); virtual void CreateGeometry() {} virtual void CreateMaterials() {} - Int_t DistancetoPrimitive(Int_t px, Int_t py); virtual Int_t IsVersion() const =0; - virtual void ResetDigits(); - virtual void StepManager(); - + virtual Float_t ZMin() const; // Minimum overall dimension of the ZDC + virtual Float_t ZMax() const; // Maximum overall dimension of the ZDC + virtual void SetTreeAddress(); + virtual void MakeBranch(Option_t* opt); + virtual void Hits2SDigits(); + virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager) const; + virtual void Digits2Raw(); + virtual Bool_t Raw2SDigits(AliRawReader* rawReader); + Int_t Pedestal(Int_t Detector, Int_t Quadrant, Int_t Res) const; + Int_t ADCch2Phe(Int_t Detector, Int_t Quadrant, Int_t ADCVal, Int_t Res) const; + virtual void StepManager() {} + // Switching off the shower development in ZDCs void NoShower(){fNoShower=1;} void Shower() {fNoShower=0;} - + + + //Calibration methods + void SetZDCCalibFName(const char *name); + char* GetZDCCalibFName() const {return (char*)fZDCCalibFName.Data();} + AliZDCPedestals* GetPedCalib() const {return fPedCalib;} + AliZDCCalib* GetECalibData() const {return fCalibData;} + + // Trigger + virtual AliTriggerDetector* CreateTriggerDetector() const + {return new AliZDCTrigger();} + +private: + + AliZDC& operator = (const AliZDC&); + protected: - - // TClonesArray of stored hits -> not reset et finish event - // (for digitization at the end of the event) - TClonesArray *fStHits; - Int_t fNStHits; - - Int_t fNPrimaryHits; // Number of primary particles - Int_t fNoShower; // Flag to switch off the shower + Int_t fNoShower; // Flag to switch off the shower - ClassDef(AliZDC,1) // Zero Degree Calorimeter base class + //Calibration data member + AliZDCPedestals* fPedCalib; // Pedestal data for ZDC + AliZDCCalib* fCalibData; // Energy and equalization data for ZDC + + TString fZDCCalibFName; // Name of the ZDC calibration data + + ClassDef(AliZDC,7) // Zero Degree Calorimeter base class }; +// Calibration +//_____________________________________________________________________________ +inline void AliZDC::SetZDCCalibFName(const char *name) +{ + fZDCCalibFName = name; + gSystem->ExpandPathName(fZDCCalibFName); +} + + #endif