// manages the search for jets
// Authors: jgcn@mda.cinvestav.mx
// andreas.morsch@cern.ch
+// magali.estienne@subatech.in2p3.fr
+// alexandre.shabetai@cern.ch
//---------------------------------------------------------------------
-#include <TObject.h>
+#include "AliJetCalTrk.h"
#include "AliAODJet.h"
-#include "AliJetReader.h"
-
-class TFile;
-class TTree;
-class AliJet;
-class AliJetHeader;
-class AliJetControlPlots;
-class AliLeading;
-class AliAODJet;
+#include "AliJetHeader.h"
+#include "AliAODJetEventBackground.h"
class AliAODEvent;
class AliJetFinder : public TObject
AliJetFinder();
virtual ~AliJetFinder();
- // getters
- virtual AliJetReader *GetReader() {return fReader;}
- virtual AliJetHeader *GetHeader() {return fHeader;}
- virtual AliJet *GetJets() {return fJets;}
- virtual Bool_t GetPlotMode() const {return fPlotMode;}
- virtual TFile* GetOutputFile() {return fOut;}
- // setters
- virtual void SetPlotMode(Bool_t b);
- virtual void SetOutputFile(const char *name="jets.root");
- virtual void SetJetReader(AliJetReader* r) {fReader=r;}
- virtual void SetJetHeader(AliJetHeader* h) {fHeader=h;}
- // others
- virtual void AddJet(AliAODJet jet);
- virtual void PrintJets();
- virtual void Run();
- virtual void WriteRHeaderToFile();
+ // Getters
+ virtual AliJetCalTrkEvent* GetCalTrkEvent() const {return fCalTrkEvent;}
+ virtual AliJetHeader *GetJetHeader() const {return fHeader;}
+ virtual AliAODJetEventBackground* GetEventBackground() const {return fAODEvBkg;}
+ // Setters
+ virtual void SetCalTrkEvent(AliJetCalTrkEvent& event) {fCalTrkEvent = &event;}
+ virtual void SetJetHeader(AliJetHeader* h) {fHeader=h;}
+ virtual void SetEventBackground(AliAODJetEventBackground* bkg) {fAODEvBkg = bkg;}
+ // Others
+ virtual void AddJet(AliAODJet jet);
+ virtual void WriteHeaderToFile();
+ virtual void WriteHeader();
// the following have to be implemented for each specific finder
- virtual void Init() {}
- virtual void Reset() {fNAODjets = 0;}
- virtual void FindJets() {}
- virtual void FindJetsTPC(){}
- virtual void WriteJHeaderToFile() { }
+ virtual void Init() {}
+ virtual void Reset() {fNAODjets = 0;}
+ virtual void FindJets() {}
+ virtual void ComputeBkgs() {}
+ virtual void CreateOutputObjects(TList * const /*histos*/) {} // Used by CDF for histo storage
+
// some methods to allow steering from the outside
- virtual Bool_t ProcessEvent();
- virtual void FinishRun();
- virtual void ConnectTree(TTree* tree, TObject* data);
- virtual void ConnectAOD(AliAODEvent* aod);
- virtual void ConnectAODNonStd(AliAODEvent* aod,const char* bname);
- virtual TTree* MakeTreeJ(char* name);
- virtual void WriteHeaders();
- virtual void WriteJetsToFile() {;}
- virtual void TestJet() {;}
+ virtual Bool_t ProcessEvent();
+ virtual void ConnectAOD(const AliAODEvent* aod);
+ virtual void ConnectAODNonStd(AliAODEvent* aod,const char* bname);
+ virtual void AddHistosToList(TList */*list*/) {}
+
protected:
AliJetFinder(const AliJetFinder& rJetFinder);
AliJetFinder& operator = (const AliJetFinder& rhsf);
- TTree* fTreeJ; //! pointer to jet tree
- Bool_t fPlotMode; //! do you want control plots?
- AliJet* fJets; //! pointer to jet class
- AliJet* fGenJets; //! pointer to generated jets
- AliLeading* fLeading; //! pointer to leading particle data
- AliJetReader* fReader; // pointer to reader
- AliJetHeader* fHeader; // pointer to header
- TClonesArray* fAODjets; //! reconstructed jets
- Int_t fNAODjets; //! number of reconstructed jets
- AliJetControlPlots* fPlots; //! pointer to control plots
- TFile* fOut; //! output file
- ClassDef(AliJetFinder,2)
+ AliJetHeader* fHeader; // pointer to header
+ TClonesArray* fAODjets; //! reconstructed jets
+ Int_t fNAODjets; // number of reconstructed jets
+ AliAODJetEventBackground* fAODEvBkg; //! bkg object to be store
+ Int_t fDebug; // debug option, set through the header
+ AliJetCalTrkEvent* fCalTrkEvent; // pointer to AliJetCalTrkEvent object
+
+ ClassDef(AliJetFinder,3) // base class for any jet finder
+
};
#endif