#include <TObjArray.h> // used in inline function GetModule.
#include <TBranch.h> // used in inline function SetHitsAddressBranch
-#include "AliRun.h"
#include "AliLoader.h"
#include "AliDetector.h"
#include "AliITSDetType.h"
class AliITSRecPoint;
class AliITSRawCluster;
class AliITSmodule;
+class AliVertexer;
const Int_t kNTYPES=3;
virtual Int_t GetMinorVersion() const {return -1;}
virtual void GetGeometryVersion(Int_t &a,Int_t &b)
{a = GetMajorVersion();b=GetMinorVersion();return;}
- virtual void SetEUCLID(Bool_t euclid=1) {fEuclidOut = euclid;}
+ virtual void SetEUCLID(Bool_t euclid=kTRUE) {fEuclidOut = euclid;}
//-------------------- Geometry Transformations --------------------
// ITS geometry functions
AliITSgeom *GetITSgeom() const {return fITSgeom;}
virtual void InitModules(Int_t size,Int_t &nmodules);
virtual void FillModules(TTree *treeH, Int_t mask = 0);
virtual void FillModules(Int_t evnt,Int_t bgrev,Int_t nmodules,
- Option_t *opt,Text_t *filename);
+ Option_t *opt, const char *filename);
virtual void ClearModules();
//===================== Digitisation ===============================
TClonesArray * GetSDigits() { return fSDigits; }
void MakeBranchInTreeD(TTree *treeD,const char *file=0);
void MakeBranchD(const char *file){
- MakeBranchInTreeD(gAlice->TreeD(),file);}
+ MakeBranchInTreeD(GetLoader()->TreeD(),file);}
void SetTreeAddressD(TTree *treeD);
void Hits2SDigits(); // Turn hits into SDigits
void Hits2PreDigits(); // Turn hits into SDigits
+ AliDigitizer* CreateDigitizer(AliRunDigitizer* manager) const;
void SDigits2Digits(){SDigitsToDigits("All");} // Turn SDigits to Digits
void SDigitsToDigits(Option_t *opt="All"); // Turn SDigits to Digits
void Hits2Digits(); // Turn hits straight into Digits.
//------------------ Internal functions ----------------------------
// Standard Hits To SDigits function
void HitsToSDigits(Int_t evNumber,Int_t bgrev,Int_t size,
- Option_t *add, Option_t *det, Text_t *filename);
+ Option_t *add, Option_t *det, const char *filename);
// Standard Hits To SDigits function
void HitsToPreDigits(Int_t evNumber,Int_t bgrev,Int_t size,
- Option_t *add, Option_t *det, Text_t *filename);
+ Option_t *add, Option_t *det, const char *filename);
// Standard Hits To Digits function
void HitsToDigits(Int_t evNumber,Int_t bgrev,Int_t size,
- Option_t *add, Option_t *det, Text_t *filename);
+ Option_t *add, Option_t *det, const char *filename);
void ResetSDigits(); // Resets the Summable digits.
void ResetDigits(); // depending on how the
void ResetDigits(Int_t branch); // tree will be filled only
Int_t *Ndtype() {return fNdtype;}
TClonesArray *DigitsAddress(Int_t id)
{return ((TClonesArray *) (*fDtype)[id]);}
+ void SelectVertexer(TString sel=" "){fSelectedVertexer = sel;}
//===================== Raw Data IO ================================
// Write digits into raw data format
void SetTreeAddressR(TTree *treeR);
void AddRecPoint(const AliITSRecPoint &p);
void HitsToFastRecPoints(Int_t evNumber,Int_t bgrev,Int_t size,
- Option_t *add, Option_t *det, Text_t *filename);
+ Option_t *add, Option_t *det, const char *filename);
void Digits2Reco();
void DigitsToRecPoints(Int_t evNumber,Int_t lastEntry,Option_t *det);
void ResetRecPoints();
// Return pointer to rec points
TClonesArray *RecPoints() {return fRecPoints;}
+
+ virtual void Reconstruct() const;
+ virtual AliTracker* CreateTracker() const;
+ virtual AliVertexer* CreateVertexer() const;
+ virtual void FillESD(AliESD* esd) const;
protected:
//================== Data Members ==================================
TClonesArray *fRecPoints; //! List of reconstructed points
Int_t fNRecPoints; // Number of rec points
+ TString fSelectedVertexer; // Vertexer selected in CreateVertexer
- ClassDef(AliITS,3) // Base class for ITS
+ ClassDef(AliITS,4) // Base class for ITS
};
#endif