Protections for coverity: DIVIDE_BY_ZERO
[u/mrichter/AliRoot.git] / JETAN / AliJetFinder.h
CommitLineData
99e5fe42 1#ifndef ALIJETFINDER_H
2#define ALIJETFINDER_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
99e5fe42 7//---------------------------------------------------------------------
8// Jet finder base class
9// manages the search for jets
7d0f353c 10// Authors: jgcn@mda.cinvestav.mx
11// andreas.morsch@cern.ch
8838ab7a 12// magali.estienne@subatech.in2p3.fr
99e5fe42 13//---------------------------------------------------------------------
14
be6e5811 15//#include <Riostream.h>
16//#include <vector>
17
99e5fe42 18#include <TObject.h>
1d27ecd2 19#include "AliAODJet.h"
4bd88e77 20#include "AliJetHeader.h"
21#include "AliJetReader.h"
22#include "AliAODJetEventBackground.h"
99e5fe42 23
8838ab7a 24class TChain;
952b368c 25class TTree;
1d27ecd2 26class AliAODEvent;
952b368c 27class AliJetReaderHeader;
99e5fe42 28
99e5fe42 29class AliJetFinder : public TObject
30{
31 public:
99e5fe42 32 AliJetFinder();
33 virtual ~AliJetFinder();
34
42b0ac89 35 // Getters
952b368c 36 virtual AliJetReader *GetReader() const {return fReader;}
37 virtual AliJetHeader *GetHeader() const {return fHeader;}
b8bf1e90 38 virtual AliAODJetEventBackground* GetEventBackground() const {return fAODEvBkg;}
42b0ac89 39 // Setters
8838ab7a 40 virtual void SetJetReader(AliJetReader* r) {fReader=r;}
41 virtual void SetJetHeader(AliJetHeader* h) {fHeader=h;}
b8bf1e90 42 virtual void SetEventBackground(AliAODJetEventBackground* bkg) {fAODEvBkg = bkg;}
42b0ac89 43 // Others
8838ab7a 44 virtual void AddJet(AliAODJet jet);
8838ab7a 45 virtual void WriteRHeaderToFile();
99e5fe42 46 // the following have to be implemented for each specific finder
8838ab7a 47 virtual void Init() {}
48 virtual void InitTask(TChain* /*tree*/) {}
49 virtual void Reset() {fNAODjets = 0;}
50 virtual void FindJets() {}
51 virtual void FindJetsC(){}
446dbc09 52 virtual void WriteJHeaderToFile() const {}
7d0f353c 53 // some methods to allow steering from the outside
8838ab7a 54 virtual Bool_t ProcessEvent();
55 virtual Bool_t ProcessEvent2();
8838ab7a 56 virtual void ConnectTree(TTree* tree, TObject* data);
1240edf5 57 virtual void ConnectAOD(const AliAODEvent* aod);
8838ab7a 58 virtual void ConnectAODNonStd(AliAODEvent* aod,const char* bname);
8838ab7a 59 virtual void WriteHeaders();
8838ab7a 60
99e5fe42 61 protected:
1b7d5d7e 62 AliJetFinder(const AliJetFinder& rJetFinder);
63 AliJetFinder& operator = (const AliJetFinder& rhsf);
b8bf1e90 64 AliJetReader* fReader; // pointer to reader
65 AliJetHeader* fHeader; // pointer to header
66 TClonesArray* fAODjets; //! reconstructed jets
67 Int_t fNAODjets; //! number of reconstructed jets
68 AliAODJetEventBackground* fAODEvBkg; //! bkg object to be store
dd677561 69 Int_t fDebug; // debug option, set through the header
70
7d0f353c 71 ClassDef(AliJetFinder,2)
99e5fe42 72};
73
74#endif