#include <Riostream.h>
#include <TNamed.h>
+#include <TClonesArray.h>
#include "AliLog.h"
#include "AliTriggerDetector.h"
-class TClonesArray;
class TBrowser;
class TArrayI;
class TFile;
virtual ~AliModule();
// Inline functions
- virtual int GetNdigits() const {return 0;}
- virtual int GetNhits() const {return 0;}
+ virtual Int_t GetNdigits() const {return 0;}
+ virtual Int_t GetNhits() const {return 0;}
virtual TArrayI *GetIdtmed() const {return fIdtmed;}
- virtual TList *Histograms() const {return fHistograms;}
- virtual TList *Nodes() const {return fNodes;}
virtual TClonesArray *Digits() const {return 0;}
virtual TClonesArray *Hits() const {return 0;}
virtual TObjArray *Points() const {return 0;}
virtual Bool_t IsFolder() const {return kTRUE;}
virtual Int_t& LoMedium() {return fLoMedium;}
virtual Int_t& HiMedium() {return fHiMedium;}
+ virtual Bool_t IsModule() const {return kTRUE;}
+ virtual Bool_t IsDetector() const {return kFALSE;}
// Module composition
virtual void AliMaterial(Int_t imat, const char* name, Float_t a,
virtual void CreateMaterials() {}
virtual void DefineOpticalProperties() {}
virtual void AddAlignableVolumes() const;
- virtual void Disable();
- virtual void Enable();
virtual void PreTrack(){}
virtual void PostTrack(){}
virtual void FinishEvent() {}
virtual void ResetDigits() {}
virtual void ResetSDigits() {}
virtual void ResetHits() {}
- virtual void ResetPoints() {}
virtual void SetTimeGate(Float_t) {}
virtual Float_t GetTimeGate() const {return 1.e10;}
virtual void StepManager() {}
virtual void SetBufferSize(Int_t) {}
virtual Float_t ZMin() const;
virtual Float_t ZMax() const;
- virtual void SetEuclidFile(char *material,char *geometry=0);
- virtual void ReadEuclid(const char *filnam, char *topvol);
- virtual void ReadEuclidMedia(const char *filnam);
// Track reference related
- TClonesArray *TrackReferences() const {return fTrackReferences;}
virtual AliTrackReference * AddTrackReference(Int_t label, Int_t id = -999);
- virtual AliTrackReference * FirstTrackReference(Int_t track);
- virtual AliTrackReference * NextTrackReference();
TTree* TreeTR(); //shorcut method for accessing treeTR from folder
-
void SetRunLoader(AliRunLoader* runLoader)
{fRunLoader = runLoader;}
// Quality Assurance methods
virtual void CheckQA() { ; }
+ static void SetDensityFactor(Float_t density) { fgDensityFactor = density; }
+ static Float_t GetDensityFactor() { return fgDensityFactor; }
+
protected:
// Data members
- TString fEuclidMaterial; //!Name of the Euclid file for materials (if any)
- TString fEuclidGeometry; //!Name of the Euclid file for geometry (if any)
-
TArrayI *fIdtmed; //!List of tracking medium numbers
TArrayI *fIdmate; //!List of material numbers
Int_t fLoMedium; //!Minimum tracking medium ID for this Module
Int_t fHiMedium; //!Maximum tracking medium ID for this Module
Bool_t fActive; //Detector activity flag
- TList *fHistograms; //List of histograms
- TList *fNodes; //List of geometry nodes
Bool_t fEnable; //StepManager enabling flag
- TClonesArray *fTrackReferences; //!list of track references - for one primary track only -MI
Int_t fMaxIterTrackRef; //!for track refernce iterator routines
Int_t fCurrentIterTrackRef; //!for track refernce iterator routines
AliRunLoader* fRunLoader; //!local pointer to run loader
+ static Float_t fgDensityFactor; //! factor that is multiplied to all material densities (ONLY for systematic studies)
+
private:
- AliModule(const AliModule &mod);
- AliModule& operator=(const AliModule &mod);
+ AliModule(const AliModule&);
+ AliModule& operator=(const AliModule&);
- ClassDef(AliModule,7) //Base class for ALICE Modules
+ ClassDef(AliModule, 9) //Base class for ALICE Modules
};
#endif