#ifndef StarMaker_H #define StarMaker_H #include #include #include class StarMaker : public TNamed { protected: Int_t fNV; //Number of volumes Int_t fNH; //Number of hit types Int_t fND; //Number of digit types Int_t fNW; //Number of words per hit Int_t fNhits; //Number of hits Int_t fNdigits; //Number of digits Int_t fGset; //Geant set number Int_t fGndet; //number of same dets Int_t fGdet[ 20]; //list of same dets Int_t fNbitsV[20]; //list of bits for volume[i] Int_t fNbitsH[20]; //Number of bits for hit[i] Float_t fOrigin[20]; //Origin for hit[i] Float_t fFactor[20]; //Factor for hit[i] Int_t fNbitsD[20]; //Number of bits for digit[i] TString fSetName; //Set name TString fDetName; //Det name TList *fHistograms; //List of histograms TClonesArray *fHits; //List of hits TClonesArray *fDigits; //List of digits public: StarMaker(const char *name, const char *title); StarMaker(); ~StarMaker() {;} virtual void AddDigit(Int_t, Int_t, Int_t*, Int_t*, Int_t *){;} virtual void AddHit(Int_t, Int_t, Int_t*, Float_t *){;} virtual void Browse(TBrowser *b); virtual void Clear(Option_t *opt=""); virtual Int_t DistancetoPrimitive(Int_t px, Int_t py); virtual void FakeDigits(Int_t nd, Int_t snd); virtual void FakeHits(Int_t nh, Int_t snh); virtual void Finish(); TList *Histograms() {return fHistograms;} Int_t GetNV() {return fNV;} Int_t GetNH() {return fNH;} Int_t GetND() {return fND;} Int_t GetNW() {return fNW;} Int_t *GetNbitsV() {return fNbitsV;} Int_t *GetNbitsH() {return fNbitsH;} Int_t *GetNbitsD() {return fNbitsD;} Float_t *GetFactor() {return fFactor;} Float_t *GetOrigin() {return fOrigin;} virtual Int_t ImportGeantDigits(); virtual Int_t ImportGeantHits(); virtual void Init() {;} Bool_t IsFolder() {return kTRUE;} virtual void MakeBranch(); virtual void Paint(Option_t *opt=""); ClassDef(StarMaker,1) //Base class for hits makers }; #endif