// Author: Gero Flucke // Date: June 1st, 2002 // last update: $Date: 2005/07/14 14:37:29 $ // by: $Author: flucke $ #ifndef __GFDSTARANALYSEDATA_H #define __GFDSTARANALYSEDATA_H // ROOT includes #include "TObject.h" #include "TArrayI.h" // my includes #include "GFDstarAnalyse.h" class H1PartDstar; class GFHistArray; class GFDstarAnalyseData : public GFDstarAnalyse { public: GFDstarAnalyseData(); virtual ~GFDstarAnalyseData(); // void CreateHistsDmWc(); void CreateHistsAccept(); void CreateHistsDoubleTrig(); void CreateHistsL4Eff(); virtual void CreateHistsL4Eff2(); void CreateHistsL4Check(); void CreateHistsYjbRes(const char * nameAdd = NULL); // argument ignored! virtual void OpenTree(); void CreateHistsPhotonTag(); void CreateHistsTrigEff(); Bool_t FillHistsDstarWc(const H1PartDstar* dstarWc); void FillHistsAccept(const H1PartDstar* dstar); void FillHistsDoubleTrig(const H1PartDstar* dstar); void FillHistsL4Eff(const TObjArray* dstars);//const H1PartDstar* dstar, Int_t runnr); void FillHistsYjbRes(const H1PartDstar* dstar); void FillHistsPhotonTag(const H1PartDstar* dstar); void FillHistsTrigEff(const H1PartDstar* ds); void FillHistsEffDedx(const H1PartDstar* ds); void FillHistsWeightsD0(const H1PartDstar* ds); Bool_t IsST(Int_t subTrig) const; virtual Bool_t IsS83(const H1PartDstar* ds = NULL) const; virtual Bool_t IsS83NoL4Check(const H1PartDstar* ds = NULL) const; virtual Bool_t IsS83NoYtagL4Check(const H1PartDstar* ds = NULL) const; virtual Bool_t IsS83NonTrig(const H1PartDstar* ds = NULL) const; virtual Bool_t IsPhotonE() const ; virtual Bool_t IsS84(const H1PartDstar* ds = NULL) const; virtual Bool_t IsS84NoL4Check(const H1PartDstar* ds = NULL) const; virtual Bool_t IsS84NonTrig(const H1PartDstar* ds = NULL) const; virtual Bool_t IsL4Ref(Int_t subtrig) const; virtual Bool_t IsL4Found(Int_t hqsel45bit, const H1PartDstar *ds, Int_t hqselMode = -2) const; virtual Double_t GetXgammaMassHelp(const H1Part* dstar, const H1PartJet* jet) const; virtual Double_t GetXgammaMassDiJetHelp(const H1Part *dstar, const H1PartJet *dsJet, const H1PartJet *othJet) const; virtual Double_t GetXpMassHelp(const H1Part* dstar, const H1PartJet* jet) const; Bool_t IsHv() const; Bool_t IsCjcHv() const; Bool_t IsLArHv() const; Bool_t IsLumiHv() const; Bool_t IsTofHv() const; Bool_t IsFpcHv() const; Bool_t IsCipCopHv() const; protected: virtual Double_t GetWeight(Int_t trigger, const H1PartDstar *ds) const; virtual Float_t GetWgammaP33() const; virtual Float_t GetWgammaP44() const; virtual Float_t GetY33() const; virtual Float_t GetY44() const; void CreateHistsEffDedx(); void CreateHistsD0Weights(); Double_t fEventCutXS83; Double_t fEphotonTagCut; TArrayI fIndepL4Class83; // classes for L4 efficiency TArrayI fIndepL4Class84; // classes for L4 efficiency GFHistArray* fDmHistsWc; GFHistArray* fDmHistsWcS83; GFHistArray* fDmHistsWcS84; GFHistArray* fAcceptHistsS83; GFHistArray* fAcceptHistsNomS83; GFHistArray* fAcceptHists2DS83; GFHistArray* fAcceptHistsS84; GFHistArray* fAcceptHistsNomS84; GFHistArray* fAcceptHists2DS84; GFHistArray* fDoubleTrigHists; GFHistArray* fL4EffHists; GFHistArray* fL4CheckHistsS83; GFHistArray* fL4CheckHistsS84; GFHistArray* fYjbResHistsS83; GFHistArray* fPhotonTagHists; // hists for trigger efficiency: GFHistArray* fTrigEffHistsS83; // TE 19 + 31 fired GFHistArray* fTrigEffHists19S83;// TE 19 fired GFHistArray* fTrigEffHists31S83;// TE 31 fired GFHistArray* fNonTrigEffHistsS83; // reference count GFHistArray* fTrigEffHistsS84; // TE 19 + 31 fired GFHistArray* fTrigEffHists19S84;// TE 19 fired GFHistArray* fTrigEffHists31S84;// TE 31 fired GFHistArray* fNonTrigEffHistsS84; // reference count GFHistArray* fEffDedxHists; GFHistArray* fEffDedxHistsS83; GFHistArray* fEffDedxTrkHistsS83; GFHistArray* fEffDedxTrkRefHistsS83; GFHistArray *fWeightsD0Hists; GFHistArray *fWeightsD0HistsS83; ClassDef(GFDstarAnalyseData,0) // histogram book keeping, filling etc. for real data }; #endif // __GFDSTARANALYSEDATA_H