00001 00002 // $Id: ANtpSnarlManipulator.h,v 1.1 2005/05/04 14:06:54 minoscvs Exp $ 00003 // 00004 // A class to easily get at the SR ntuple information 00005 // 00006 // B. Rebel 10/2004 00008 #ifndef ANTPSNARLMANIPULATOR_H 00009 #define ANTPSNARLMANIPULATOR_H 00010 00011 #include "TClonesArray.h" 00012 00013 #include "CandNtupleSR/NtpSREvent.h" 00014 #include "CandNtupleSR/NtpSRStrip.h" 00015 #include "CandNtupleSR/NtpSRTrack.h" 00016 #include "CandNtupleSR/NtpSRShower.h" 00017 00018 class ANtpSnarlManipulator 00019 { 00020 00021 public: 00022 ANtpSnarlManipulator(); 00023 virtual ~ANtpSnarlManipulator(); 00024 00025 NtpSREvent *GetEvent(Int_t index); //get event at index in TClonesArray 00026 NtpSRTrack *GetTrack(Int_t index); //get track at index in TClonesArray 00027 NtpSRShower *GetShower(Int_t index); //get shower at index in TClonesArray 00028 NtpSRTrack *GetPrimaryTrack(); //get primary track in snarl 00029 NtpSRShower *GetPrimaryShower(); //get primary shower in snarl 00030 NtpSRStrip *GetStrip(Int_t index); //get strip at index in TClonesArray 00031 00032 void SetPrimaryTrackCriteria(Int_t useNPlanes, Int_t useLength, Int_t usePH); 00033 void SetPrimaryShowerCriteria(Int_t useNPlanes, Int_t usePH); 00034 void Initialize(TClonesArray *eventArray, TClonesArray *trackArray, 00035 TClonesArray *showerArray, TClonesArray *stripArray); //initialize for a new snarl 00036 00037 private: 00038 00039 TClonesArray *fEventArray; 00040 TClonesArray *fTrackArray; 00041 TClonesArray *fShowerArray; 00042 TClonesArray *fStripArray; 00043 00044 Int_t fUseLengthTrack; //the fUseXXX variables are set to 1 if 00045 Int_t fUsePHShower; //they should be used to determine primaryness 00046 Int_t fUseNPlanesShower;//or 0 if they should not 00047 Int_t fUsePHTrack; 00048 Int_t fUseNPlanesTrack; 00049 00050 ClassDef(ANtpSnarlManipulator, 1) //ANtpSnarlManipulator 00051 }; 00052 00053 #endif // ANTPSNARLMANIPULATOR_H 00055