3 /* Copyright(c) 1998-2001, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ////////////////////////////////////////////////////////////////////////
10 // Base Class for Detector specific Merging/Digitization
11 // Detector specific digitization classes derive from this
12 // Author: Jiri Chudoba (CERN)
14 ////////////////////////////////////////////////////////////////////////
17 #include "AliDigitizationInput.h"
19 class AliDigitizer: public TNamed {
22 // ctor with name and title
23 AliDigitizer(const Text_t* name="AliDigitizer",
24 const Text_t* title="AliDigitizer");
25 // ctor to be used with name and title
26 AliDigitizer(AliDigitizationInput *manager,
27 const Text_t* name="AliDigitizer",
28 const Text_t* title="AliDigitizer");
29 // Copy ctor needed because there is a pointer
30 AliDigitizer(const AliDigitizer &dig);
31 AliDigitizer& operator=(const AliDigitizer &dig)
32 {dig.Copy(*this);return *this;}
34 virtual ~AliDigitizer();
35 virtual Bool_t Init() {return kTRUE;}
36 virtual void Digitize(Option_t* option) = 0;
37 Bool_t GetRegionOfInterest() const {return fDigInput ? fDigInput->GetRegionOfInterest() : kFALSE;}
40 Int_t GetNInputStreams() const;
41 void Copy(TObject &dig) const;
43 AliDigitizationInput *fDigInput; //! Pointer to the Digitizer input
45 ClassDef(AliDigitizer,3) // Base class for detector digitizers
48 #endif // ALIDIGITIZER_H