////////////////////////////////////////////////////////// // This class has been automatically generated on // Wed Feb 25 13:09:22 2015 by ROOT version 5.34/21 // from TTree output/output // ////////////////////////////////////////////////////////// #ifndef __NTUPLEMERGE_H__ #define __NTUPLEMERGE_H__ #include #include #include #include // Header file for the classes stored in the TTree if any. #include #include #include #include #include #include // Fixed size dimensions of array or collections stored in the TTree if any. using namespace std ; using std::vector ; using std::priority_queue ; using std::string ; namespace RAT { class NtupleMerge : public TObject { public : TFile *file ; TTree *fChain ; //!pointer to the analyzed TTree or TChain Int_t fCurrent; //!current Tree number in a TChain //TTree *outputT ; Long64_t fEntry; //! current event number in TChain NtupleMerge* fOutputEvent; //! event to write out Int_t fTime ; // Declaration of leaf types Int_t runID; TString *ratversion; Int_t mcIndex; Int_t evIndex; Bool_t mc; Int_t eventID; Int_t pdg1; Int_t pdg2; Int_t parentpdg1; Int_t parentpdg2; Double_t mcke1; Double_t mcke2; Double_t mct; Double_t mcEdep; Double_t mcEdepQuenched; Double_t mcPosx; Double_t mcPosy; Double_t mcPosz; Int_t nhits; Double_t q; Int_t triggerWord; ULong64_t clockCount10; ULong64_t clockCount50; Int_t uTDays; Int_t uTSecs; Int_t uTNSecs; Bool_t scintFit; Bool_t waterFit; Bool_t partialFit; Double_t posx; Double_t posxPosError; Double_t posxNegError; Double_t posy; Double_t posyPosError; Double_t posyNegError; Double_t posz; Double_t poszPosError; Double_t poszNegError; Double_t posFOM; Double_t dirx; Double_t dirxError; Double_t diry; Double_t diryError; Double_t dirz; Double_t dirzError; Double_t energy; Double_t energyError; Double_t time; Double_t timeError; Int_t timingPeaks; Double_t alpha; Double_t beta14; // List of branches TBranch *b_runID; //! TBranch *b_ratversion; //! TBranch *b_mcIndex; //! TBranch *b_evIndex; //! TBranch *b_mc; //! TBranch *b_eventID; //! TBranch *b_pdg1; //! TBranch *b_pdg2; //! TBranch *b_parentpdg1; //! TBranch *b_parentpdg2; //! TBranch *b_mcke1; //! TBranch *b_mcke2; //! TBranch *b_mct; //! TBranch *b_mcEdep; //! TBranch *b_mcEdepQuenched; //! TBranch *b_mcPosx; //! TBranch *b_mcPosy; //! TBranch *b_mcPosz; //! TBranch *b_nhits; //! TBranch *b_q; //! TBranch *b_triggerWord; //! TBranch *b_clockCount10; //! TBranch *b_clockCount50; //! TBranch *b_uTDays; //! TBranch *b_uTSecs; //! TBranch *b_uTNSecs; //! TBranch *b_scintFit; //! TBranch *b_waterFit; //! TBranch *b_partialFit; //! TBranch *b_posx; //! TBranch *b_posxPosError; //! TBranch *b_posxNegError; //! TBranch *b_posy; //! TBranch *b_posyPosError; //! TBranch *b_posyNegError; //! TBranch *b_posz; //! TBranch *b_poszPosError; //! TBranch *b_poszNegError; //! TBranch *b_posFOM; //! TBranch *b_dirx; //! TBranch *b_dirxError; //! TBranch *b_diry; //! TBranch *b_diryError; //! TBranch *b_dirz; //! TBranch *b_dirzError; //! TBranch *b_energy; //! TBranch *b_energyError; //! TBranch *b_time; //! TBranch *b_timeError; //! TBranch *b_timingPeaks; //! TBranch *b_alpha; //! TBranch *b_beta14; //! NtupleMerge(TTree *tree=0, NtupleMerge *outputEvent=NULL); virtual ~NtupleMerge(); virtual Int_t Cut(Long64_t entry); virtual Int_t GetEntry(Long64_t entry); virtual Long64_t LoadTree(Long64_t entry); virtual void Init(TTree *tree); virtual void Loop(); virtual void MakeTree(); // prepare to output data virtual void FillTree() ; virtual void WriteTree() ; virtual Bool_t Notify(); virtual void Show(Long64_t entry = -1); void FillEvent(NtupleMerge &rhs); int GetTime()const {return fTime ;} bool operator()(const NtupleMerge* a, const NtupleMerge* b)const { return a->GetTime() > b->GetTime() ; } //void GetNextEvent(); //void NextEvent(); //static std::priority_queue,MixedEventGenerator> sQueue; //static std::priority_queue, NtupleMerge> sQueue; // std::priority_queue q1; // priority_queue sList; ClassDefNV(NtupleMerge,1) ; }; } /* namespace RAT */ #endif /* __NTUPLEMERGE_H__*/