updates for Effective C++ compiler flags
[u/mrichter/AliRoot.git] / EMCAL / jetfinder / AliEMCALJetFinderInput.h
1 #ifndef ALIEMCALJETFINDERINPUT_H
2 #define ALIEMCALJETFINDERINPUT_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  *  *  * See cxx source for full Copyright notice     */
6
7 /* $Id$ */
8
9 //_________________________________________________________________________
10 //  Initial input object for jetfinder
11 //
12 //*-- Author: Mark Horner (LBL/UCT)
13 //
14 //
15
16
17 #include "TObject.h"
18 #include "TParticle.h"
19 #include "TMCParticle6.h"
20 #include "TClonesArray.h"
21 #include "AliEMCALParton.h"
22 #include "AliEMCALDigit.h"
23 #include "AliEMCALJetFinderTypes.h"
24
25 class AliEMCALJetFinderInput : public TObject
26 {
27         public:
28                 AliEMCALJetFinderInput();
29                 ~AliEMCALJetFinderInput();
30                 void Reset(AliEMCALJetFinderResetType_t resettype);
31                 void SetDebug(Int_t debug=0){fDebug = debug;}
32                 void AddEnergyToDigit(Int_t digitID,Int_t denergy); 
33                 void AddTrack(TParticle track);
34                 void AddTrack(TMCParticle *track);
35                 void AddParton(AliEMCALParton *parton);
36                 void AddParticle(TParticle *particle);
37                 void AddParticle(TMCParticle *particle);
38                 AliEMCALDigit* GetDigit(Int_t digitID);
39                 Int_t GetNDigits() const {return fNDigits;}
40                 TParticle* GetTrack(Int_t trackID);
41                 Int_t GetNTracks() const {return fNTracks;}
42                 AliEMCALParton* GetParton(Int_t partonID);
43                 Int_t GetNPartons() const {return fNPartons;}
44                 TParticle* GetParticle(Int_t particleID);
45                 Int_t GetNParticles() const {return fNParticles;}
46
47                 AliEMCALJetFinderInput (const AliEMCALJetFinderInput&);
48                 AliEMCALJetFinderInput & operator = (const AliEMCALJetFinderInput &) {
49                   Fatal("operator =", "not implemented") ;
50                   return *this ;
51                 }
52
53         private:
54                 void InitArrays();
55                 TClonesArray*   fDigitsArray;   //-> This is the digits array for the EMCAL
56                 Int_t           fNDigits;       // This is the number of digits
57                 Int_t           fNMaxDigits;    // This is the max number of digits
58                 TClonesArray*   fTracksArray;   //-> This is the track array 
59                 Int_t           fNTracks;       // This stores the number of tracks     
60                 Int_t           fNMaxTracks;    // This stores the maximum number of tracks
61                 TClonesArray*   fPartonsArray;  //->  This is the partons array
62                 Int_t           fNPartons;      // This stores the number of partons
63                 Int_t           fNMaxPartons;   // This stores the maximum number of partons
64                 TClonesArray*   fParticlesArray;//-> This stores the particles  
65                 Int_t           fNParticles;    // This stores the number of particles
66                 Int_t           fNMaxParticles; // This stroes the maximum number of particles
67                 Int_t           fDebug;         // This is the debug value 
68                 Bool_t          fInitialised;   // Stores whether or not the arrays have been initialised 
69                 
70         ClassDef(AliEMCALJetFinderInput,5)
71 };
72 #endif