41c9294b4552be7b749116200ad021fb9c0df732
[u/mrichter/AliRoot.git] / EMCAL / 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 "TClonesArray.h"
20 #include "AliEMCALParton.h"
21 #include "AliEMCALDigit.h"
22 #include "AliEMCALJetFinderTypes.h"
23
24 class AliEMCALJetFinderInput : public TObject
25 {
26         public:
27                 AliEMCALJetFinderInput();
28                 ~AliEMCALJetFinderInput();
29                 void Reset(AliEMCALJetFinderResetType_t resettype);
30                 void SetDebug(Int_t debug=0){fDebug = debug;}
31                 void AddEnergyToDigit(Int_t digitID,Int_t denergy); 
32                 void AddTrack(TParticle track);
33                 void AddParton(AliEMCALParton *parton);
34                 void AddParticle(TParticle *particle);
35                 AliEMCALDigit* GetDigit(Int_t digitID);
36                 Int_t GetNDigits(){return fNDigits;}
37                 TParticle* GetTrack(Int_t trackID);
38                 Int_t GetNTracks(){return fNTracks;}
39                 AliEMCALParton* GetParton(Int_t partonID);
40                 Int_t GetNPartons(){return fNPartons;}
41                 TParticle* GetParticle(Int_t particleID);
42                 Int_t GetNParticles(){return fNParticles;}
43
44         private:
45                 void InitArrays();
46                 AliEMCALDigit   fDigitsArray[13824];    // This is the digits array for the EMCAL
47                 Int_t           fNDigits;       // This is the number of digits
48                 Int_t           fNMaxDigits;    // This is the max number of digits
49                 TParticle       fTracksArray[3000];     // This is the track array 
50                 Int_t           fNTracks;       // This stores the number of tracks     
51                 Int_t           fNMaxTracks;    // This stores the maximum number of tracks
52                 AliEMCALParton  fPartonsArray[4];  //  This is the partons array
53                 Int_t           fNPartons;      // This stores the number of partons
54                 Int_t           fNMaxPartons;     // This stores the maximum number of partons
55                 TParticle       fParticlesArray[2000];// This stores the particles      
56                 Int_t           fNParticles;    // This stores the number of particles
57                 Int_t           fNMaxParticles; // This stroes the maximum number of particles
58                 Int_t           fDebug;         // This is the debug value 
59                 Bool_t          fInitialised;   // Stores whether or not the arrays have been initialised 
60                 
61         ClassDef(AliEMCALJetFinderInput,2)
62 };
63 #endif