class for running the reconstruction Clusters and tracks are created for all detectors and all events by typing: AliReconstruction rec; rec.Run(); The Run method returns kTRUE in case of successful execution. If the input to the reconstruction are not simulated digits but raw data, this can be specified by an argument of the Run method or by the method rec.SetInput("..."); The input formats and the corresponding argument are: - DDL raw data files: directory name, ends with "/" - raw data root file: root file name, extension ".root" - raw data DATE file: DATE file name, any other non-empty string - MC root files : empty string, default By default all events are reconstructed. The reconstruction can be limited to a range of events by giving the index of the first and the last event as an argument to the Run method or by calling rec.SetEventRange(..., ...); The index -1 (default) can be used for the last event to indicate no upper limit of the event range. In case of raw-data reconstruction the user can modify the default number of events per digits/clusters/tracks file. In case the option is not used the number is set 1. In case the user provides 0, than the number of events is equal to the number of events inside the raw-data file (i.e. one digits/clusters/tracks file): rec.SetNumberOfEventsPerFile(...); The name of the galice file can be changed from the default "galice.root" by passing it as argument to the AliReconstruction constructor or by rec.SetGAliceFile("..."); The local reconstruction can be switched on or off for individual detectors by rec.SetRunLocalReconstruction("..."); The argument is a (case sensitive) string with the names of the detectors separated by a space. The special string "ALL" selects all available detectors. This is the default. The reconstruction of the primary vertex position can be switched off by rec.SetRunVertexFinder(kFALSE); The tracking and the creation of ESD tracks can be switched on for selected detectors by rec.SetRunTracking("..."); Uniform/nonuniform field tracking switches (default: uniform field) rec.SetUniformFieldTracking(); ( rec.SetUniformFieldTracking(kFALSE); ) The filling of additional ESD information can be steered by rec.SetFillESD("..."); Again, for both methods the string specifies the list of detectors. The default is "ALL". The call of the shortcut method rec.SetRunReconstruction("..."); is equivalent to calling SetRunLocalReconstruction, SetRunTracking and SetFillESD with the same detector selecting string as argument. The reconstruction requires digits or raw data as input. For the creation of digits and raw data have a look at the class AliSimulation. The input data of a detector can be replaced by the corresponding HLT data by calling (usual detector string) SetUseHLTData("...");
AliReconstruction(const char* gAliceFilename = "galice.root") | |
virtual | ~AliReconstruction() |
virtual void | Abort(const char* method, TSelector::EAbort what) |
void | TObject::AbstractMethod(const char* method) const |
void | AddCheckRecoCDBvsSimuCDB(const char* cdbpath, const char* comment = "") |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual void | Begin(TTree*) |
virtual void | TObject::Browse(TBrowser* b) |
void | CheckRecoCDBvsSimuCDB() |
static TClass* | Class() |
virtual const char* | TObject::ClassName() const |
void | CleanProcessedEvent() |
virtual void | TObject::Clear(Option_t* = "") |
virtual TObject* | TObject::Clone(const char* newname = "") const |
virtual Int_t | TObject::Compare(const TObject* obj) const |
virtual void | TObject::Copy(TObject& object) const |
Bool_t | CreateTrackers(const TString& detectors) |
void | DeclareTriggerClasses(const char* trClasses) |
virtual void | TObject::Delete(Option_t* option = "")MENU |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
virtual void | TObject::Draw(Option_t* option = "") |
virtual void | TObject::DrawClass() constMENU |
virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
virtual void | TObject::Dump() constMENU |
virtual void | TObject::Error(const char* method, const char* msgfmt) const |
virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
virtual TSelector::EAbort | TSelector::GetAbort() const |
const char* | GetAnalysisMacro() const |
AliAnalysisManager* | GetAnalysisManager() const |
const TObjArray* | GetCheckRecoCDBvsSimuCDB() const |
static const char** | GetDetectorNames() |
static Int_t | GetDetIndex(const char* detector) |
Float_t | GetDmax() const |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
virtual Int_t | TSelector::GetEntry(Long64_t, Int_t = 0) |
AliESDEvent* | GetESDEvent() const |
AliESDfriend* | GetESDfriend() const |
virtual const char* | TObject::GetIconName() const |
virtual TList* | TSelector::GetInputList() const |
virtual const char* | TObject::GetName() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual const char* | TSelector::GetOption() const |
virtual TList* | TSelector::GetOutputList() const |
AliRawReader* | GetRawReader() const |
AliRunLoader* | GetRunLoader() const |
static TSelector* | TSelector::GetSelector(const char* filename) |
virtual Long64_t | TSelector::GetStatus() const |
virtual const char* | TObject::GetTitle() const |
AliTracker* | GetTracker(Int_t idx) const |
virtual UInt_t | TObject::GetUniqueID() const |
Float_t | GetV0CsPmin() const |
Float_t | GetV0DCAmax() const |
Float_t | GetZmax() const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
Bool_t | HasEnoughResources(int ev) |
virtual ULong_t | TObject::Hash() const |
Bool_t | HasNextEventAfter(Int_t eventId) |
void | ImportRunLoader(AliRunLoader* rl) |
virtual void | TObject::Info(const char* method, const char* msgfmt) const |
virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
virtual void | Init(TTree* tree) |
void | InitQA() |
void | InitRun(const char* input) |
virtual void | TObject::Inspect() constMENU |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | TObject::IsFolder() const |
Bool_t | IsInTasks(AliQAv1::TASKINDEX_t tsk) |
Bool_t | TObject::IsOnHeap() const |
Bool_t | IsRunGlobalQA() const |
Bool_t | IsRunMultFinder() const |
Bool_t | IsRunQA() const |
virtual Bool_t | TObject::IsSortable() const |
static Bool_t | TSelector::IsStandardDraw(const char* selec) |
Bool_t | TObject::IsZombie() const |
virtual void | TObject::ls(Option_t* option = "") const |
void | MatchUpgradeDetector() |
void | TObject::MayNotUse(const char* method) const |
void | MergeQA(const char* fileName = NULL) |
Bool_t | MisalignGeometry(const TString& detectors) |
virtual Bool_t | TSelector::Notify() |
void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
static void | TObject::operator delete(void* ptr) |
static void | TObject::operator delete(void* ptr, void* vp) |
static void | TObject::operator delete[](void* ptr) |
static void | TObject::operator delete[](void* ptr, void* vp) |
void* | TObject::operator new(size_t sz) |
void* | TObject::operator new(size_t sz, void* vp) |
void* | TObject::operator new[](size_t sz) |
void* | TObject::operator new[](size_t sz, void* vp) |
virtual void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | TObject::Print(Option_t* option = "") const |
virtual Bool_t | Process(Long64_t entry) |
virtual Bool_t | TSelector::ProcessCut(Long64_t) |
virtual Bool_t | ProcessEvent(Int_t iEvent) |
virtual Bool_t | ProcessEvent(void* event) |
virtual void | TSelector::ProcessFill(Long64_t) |
virtual Int_t | TObject::Read(const char* name) |
void | RectifyCDBurl(TString& url) |
virtual void | TObject::RecursiveRemove(TObject* obj) |
void | RemCheckRecoCDBvsSimuCDB(const char* cdbpath) |
virtual void | TSelector::ResetAbort() |
void | TObject::ResetBit(UInt_t f) |
void | ResetCheckRecoCDBvsSimuCDB() |
virtual Bool_t | Run(const char* input = NULL) |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
virtual void | TObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "") |
void | SetAlignObjArray(TObjArray* array) |
void | SetAnalysisMacro(const char* macropath) |
void | SetAnalysisManager(AliAnalysisManager* mgr) |
void | TObject::SetBit(UInt_t f) |
void | TObject::SetBit(UInt_t f, Bool_t set) |
void | SetCDBSnapshotMode(const char* snapshotFileName) |
void | SetCleanESD(Bool_t flag = kTRUE) |
void | SetDefaultStorage(const char* uri) |
void | SetDeleteDigits(const char* dets) |
void | SetDeleteRecPoints(const char* dets) |
void | SetDiamondProfile(AliESDVertex* dp) |
void | SetDiamondProfileSPD(AliESDVertex* dp) |
void | SetDiamondProfileTPC(AliESDVertex* dp) |
void | SetDmax(Float_t d) |
virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
static void | TObject::SetDtorOnly(void* obj) |
void | SetEquipmentIdMap(const char* mapFile) |
void | SetEventRange(Int_t firstEvent = 0, Int_t lastEvent = -1) |
void | SetFillESD(const char* detectors) |
void | SetFillTriggerESD(Bool_t flag = kTRUE) |
void | SetFractionFriends(Double32_t frac = 0.04) |
void | SetGAliceFile(const char* fileName) |
void | SetInput(const char* input) |
virtual void | TSelector::SetInputList(TList* input) |
void | SetLoadAlignData(const char* detectors) |
void | SetLoadAlignFromCDB(Bool_t load) |
void | SetNumberOfEventsPerFile(UInt_t nEvents) |
virtual void | TSelector::SetObject(TObject* obj) |
static void | TObject::SetObjectStat(Bool_t stat) |
virtual void | SetOption(const char* option) |
void | SetOption(const char* detector, const char* option) |
void | SetOutput(const char* output) |
void | SetQACycles(AliQAv1::DETECTORINDEX_t det, Int_t cycles) |
void | SetQARefDefaultStorage(const char* uri) |
void | SetQAWriteExpert(AliQAv1::DETECTORINDEX_t det) |
void | SetRecoParam(const char* detector, AliDetectorRecoParam* par) |
void | SetRunCascadeFinder(Bool_t flag = kTRUE) |
void | SetRunGlobalQA(Bool_t flag = kTRUE) |
void | SetRunLocalReconstruction(const char* detectors) |
void | SetRunMultFinder(Bool_t flag = kTRUE) |
void | SetRunPlaneEff(Bool_t flag = kFALSE) |
Bool_t | SetRunQA(TString detAndAction = "ALL:ALL") |
void | SetRunReconstruction(const char* detectors) |
void | SetRunTracking(const char* detectors) |
void | SetRunV0Finder(Bool_t flag = kTRUE) |
void | SetRunVertexFinder(Bool_t flag = kTRUE) |
void | SetRunVertexFinderTracks(Bool_t flag = kTRUE) |
void | SetSpecificStorage(const char* calibType, const char* uri) |
virtual void | TSelector::SetStatus(Long64_t status) |
void | SetStopOnError(Bool_t flag = kTRUE) |
void | SetStopOnMissingTriggerFile(Bool_t flag = kTRUE) |
void | SetStopOnResourcesExcess(int vRSS = 3000, int vVMEM = 4000) |
void | SetTreeBuffSize(Long64_t sz = 30000000) |
virtual void | TObject::SetUniqueID(UInt_t uid) |
void | SetUpgradeModule(const char* detectors) |
void | SetUseHLTData(const char* detectors) |
void | SetUseTrackingErrorsForAlignment(const char* detectors) |
void | SetV0CsPmin(Float_t d) |
void | SetV0DCAmax(Float_t d) |
void | SetWriteAlignmentData(Bool_t flag = kTRUE) |
void | SetWriteESDfriend(Bool_t flag = kTRUE) |
void | SetWriteQAExpert() |
void | SetZmax(Float_t z) |
virtual void | ShowMembers(TMemberInspector&) |
virtual void | SlaveBegin(TTree*) |
virtual void | SlaveTerminate() |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
virtual void | Terminate() |
Bool_t | TObject::TestBit(UInt_t f) const |
Int_t | TObject::TestBits(UInt_t f) const |
virtual void | TObject::UseCurrentStyle() |
virtual Int_t | Version() const |
virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
Bool_t | IsCosmicOrCalibSpecie() const |
Bool_t | IsHighPt() const |
void | TObject::MakeZombie() |
void | WriteESDfriend() |
enum { | kNDetectors | |
}; | ||
enum TSelector::EAbort { | kContinue | |
kAbortProcess | ||
kAbortFile | ||
}; | ||
enum TObject::EStatusBits { | kCanDelete | |
kMustCleanup | ||
kObjInCanvas | ||
kIsReferenced | ||
kHasUUID | ||
kCannotPick | ||
kNoContextMenu | ||
kInvalidObject | ||
}; | ||
enum TObject::[unnamed] { | kIsOnHeap | |
kNotDeleted | ||
kZombie | ||
kBitMask | ||
kSingleKey | ||
kOverwrite | ||
kWriteDelete | ||
}; |
TSelector::EAbort | TSelector::fAbort | Abort status |
TList* | TSelector::fInput | List of objects available during processing |
TObject* | TSelector::fObject | !Current object if processing object (vs. TTree) |
TString | TSelector::fOption | Option given to TTree::Process |
TSelectorList* | TSelector::fOutput | !List of objects created during processing |
Long64_t | TSelector::fStatus | Selector status |
TObjArray* | fAlignObjArray | ! array with the alignment objects to be applied to the geometry |
AliAnalysisManager* | fAnalysis | ! Analysis manager |
TString | fAnalysisMacro | Full path to a macro creating an analysis manager train |
Double_t | fBeamInt[2][2] | ! mean beam intensities from AliLHCData |
Bool_t | fCDBSnapshotMode | ! flag true if we are setting the CDB Manager in snapshot mode |
TString | fCDBUri | ! Uri of the default CDB storage |
AliCTPTimeParams* | fCTPTimeAlign | an object which contains the CTP (mis)alignment data |
AliCTPTimeParams* | fCTPTimeParams | an object which contains the trigger delays |
TTree* | fChain | ! The raw-data chain in case of AliRawReaderChain |
TObjArray | fCheckRecoCDBvsSimuCDB | Array for CDB items which must be the same in the sim and rec |
Bool_t | fCleanESD | clean ESD flag |
TString | fDeclTriggerClasses | Declared defined trigger classes |
TString | fDeleteDigits | delete digits after each event |
TString | fDeleteRecPoints | delete recpoints after each event |
AliESDVertex* | fDiamondProfile | (x,y) diamond profile for AliVertexerTracks (ITS+TPC) |
AliESDVertex* | fDiamondProfileSPD | (x,y) diamond profile from SPD for AliITSVertexer3D(Z) |
AliESDVertex* | fDiamondProfileTPC | (x,y) diamond profile from TPC for AliVertexerTracks |
Float_t | fDmax | max. allowed transverse impact parameter |
TString | fESDOutput | ! name of output ESD file |
AliESDpid* | fESDpid | PID object |
TString | fEquipIdMap | name of file with equipment id map |
AliEventInfo | fEventInfo | an object which contains essential event information |
TString | fFillESD | fill ESD for these detectors |
Bool_t | fFillTriggerESD | fill trigger info into ESD |
Int_t | fFirstEvent | index of first event to be reconstr. |
Double32_t | fFractionFriends | fraction of ESD friends to be stored |
TString | fGAliceFileName | name of the galice file |
AliGRPObject* | fGRPData | Data from the GRP/GRP/Data CDB folder |
Bool_t | fInitCDBCalled | ! flag to check if CDB storages are already initialized |
Bool_t | fInitQACalled | ! control of QA intialisation |
Bool_t | fIsNewRunLoader | galice.root created from scratch (real raw data case) |
Int_t | fLastEvent | index of last event to be reconstr. |
THashTable* | fListOfCosmicTriggers | list of cosmic triggers as defined by trigger coordination |
TString | fLoadAlignData | Load alignment data from CDB for these detectors |
Bool_t | fLoadAlignFromCDB | Load alignment data from CDB and apply it to geometry or not |
TString | fLoadCDB | prefetch CDB entries and init reco-params for these detectors |
AliLoader* | fLoader[18] | ! detector loaders |
Int_t | fMaxRSS | max RSS memory, MB |
Int_t | fMaxVMEM | max VMEM memory, MB |
Long64_t | fMemCountESD | ! accumulated ESD size before AutoSave |
Long64_t | fMemCountESDF | ! accumulated ESD size before AutoSave |
Long64_t | fMemCountESDHLT | ! accumulated ESD size before AutoSave |
Int_t | fNall | ! Number of reconstructed events |
Int_t | fNhighPt | ! Number of events, selected by IsHighPt |
Int_t | fNspecie | ! Number of events, selected by IsCosmicOrCalibSpecie |
UInt_t | fNumberOfEventsPerFile | number of events per file in case of raw-data reconstruction |
TObjArray | fOptions | options for reconstructor objects |
AliRawReader* | fParentRawReader | ! parent raw data reader in case of AliRawReaderHLT |
TString | fProofOutputArchive | ! list of file to be kept in output zip archive in PROOF mode |
Bool_t | fProofOutputDataset | ! keep output file in PROOF mode in dataset or merge |
TString | fProofOutputFileName | ! name of output file in PROOF mode |
TString | fProofOutputLocation | ! output location in PROOF mode |
Int_t | fQACycles[20] | # events over which QA data are accumulated |
TString | fQADetectors | list of detectors to be QA'ed |
TString | fQARefUri | ! Uri of the default QA reference storage |
TString | fQATasks | list of QA tasks to be performed |
Bool_t | fQAWriteExpert[20] | Flag to save or not expert QA data |
TString | fRawInput | name of input raw-data file or directory |
AliRawReader* | fRawReader | ! current raw data reader |
AliRecoInputHandler* | fRecoHandler | ! Input handler adapted for reconstruction |
AliRecoParam | fRecoParam | container for the reco-param objects for detectors |
AliReconstructor* | fReconstructor[18] | ! array of reconstructor objects |
Bool_t | fRunAliEVE | Run AliEVE or not |
Bool_t | fRunCascadeFinder | run the ESD cascade finder |
Bool_t | fRunGlobalQA | Run global QA flag |
AliRunInfo* | fRunInfo | an object which contains essential global conditions information |
AliRunLoader* | fRunLoader | ! current run loader object |
TString | fRunLocalReconstruction | run the local reconstruction for these detectors |
Bool_t | fRunMFTTrackingMU | run the MFT+MUON tracking // AU |
Bool_t | fRunMultFinder | run the trackleter for ITS clusters |
Bool_t | fRunMuonTracking | run the MUON tracking |
Bool_t | fRunPlaneEff | Evaluate Plane Efficiency |
Bool_t | fRunQA | Run QA flag |
AliTriggerRunScalers* | fRunScalers | an object which contains the trigger counters for xsection |
TString | fRunTracking | run the tracking for these detectors |
Bool_t | fRunV0Finder | run the ESD V0 finder |
Bool_t | fRunVertexFinder | run the vertex finder |
Bool_t | fRunVertexFinderTracks | run the vertex finder with tracks |
AliTracker* | fSPDTrackleter | ! trackleter [for SPD Plane Efficiency purposes] |
Bool_t | fSameQACycle | ! open a new QA data file or not |
Bool_t | fSetRunNumberFromDataCalled | ! flag to check if run number is already loaded from run loader |
Int_t | fShighPt | ! Number of events, sampled from fNhighPt |
TObjArray | fSpecCDBUri | ! Array with detector specific CDB storages |
Int_t | fSspecie | ! Number of events, sampled from fNspecie |
Bool_t | fStopOnError | stop or continue on errors |
Bool_t | fStopOnMissingTriggerFile | stop if the simulated trigger file is absent |
Bool_t | fStopped | flag that reco is stopped due to the limited resources |
AliTracker* | fTracker[18] | ! trackers |
Long64_t | fTreeBuffSize | allowed uncompressed buffer size per tree |
Bool_t | fUpgradeMask[18] | |
TString | fUpgradeModule | |
TString | fUseHLTData | Detectors for which the HLT data is used as input |
TString | fUseTrackingErrorsForAlignment | for these detectors |
Float_t | fV0CsPmin | min. allowed cosine of V0 pointing angle |
Float_t | fV0DCAmax | max. allowed DCA between V0 daugthers |
Bool_t | fWriteAlignmentData | write track space-points flag |
Bool_t | fWriteESDfriend | write ESD friend flag |
Bool_t | fWriteQAExpertData | ! decides wheter or not to write experts QA data; true by default |
Float_t | fZmax | max. allowed longitudinal impact parameter |
AliESDEvent* | fesd | ! Pointer to the ESD event object |
AliESDfriend* | fesdf | ! Pointer to the ESD friend object |
TFile* | ffile | ! Pointer to the ESD file |
TFile* | ffileF | ! Pointer to the ESD friend file |
static const char* | fgkDetectorName[18] | ! names of detectors |
static const char* | fgkStopEvFName | filename for stop.event stamp |
AliESDEvent* | fhltesd | ! Pointer to the HLT ESD event object |
TTree* | fhlttree | ! Pointer to the HLT ESD tree |
AliVertexerTracks* | ftVertexer | ! Pointer to the vertexer based on ESD tracks |
TTree* | ftree | ! Pointer to the ESD tree |
TTree* | ftreeF | ! Pointer to the ESD friend tree |
Inheritance Chart: | ||||||||
|
create reconstruction object with default parameters
activate a default CDB storage First check if we have any CDB storage set, because it is used to retrieve the calibration and alignment constants
Store the desired default CDB storage location Activate it later within the Run() method
Store the desired default CDB storage location Activate it later within the Run() method
Store a detector-specific CDB storage location Activate it later within the Run() method
require the cdb item to be the same in the rec as in the sim Activate it later within the Run() method
require the cdb item to be the same in the rec as in the sim Activate it later within the Run() method
The method is called in Run() in order to set a correct run number. In case of raw data reconstruction the run number is taken from the raw data header
Set CDB lock: from now on it is forbidden to reset the run number or the default storage or to activate any further storage!
Translates detector name in a boolean. The boolean is used in GetReconstructor to load the upgrade reconstructor instead of the standard one.
Read the alignment objects from CDB. Each detector is supposed to have the alignment objects in DET/Align/Data CDB path. All the detector objects are then collected, sorted by geometry level (starting from ALIC) and then applied to the TGeo geometry. Finally an overlaps check is performed.
In case the input string starts with 'mem://', we run in an online mode and AliRawReaderDateOnline object is created. In all other cases a raw-data file is assumed. One can give as an input: mem://: - events taken from DAQ monitoring libs online or mem://<filename> - emulation of the above mode (via DATE monitoring libs)
Set the output ESD filename 'output' is a normalt ROOT url The method is used in case of raw-data reco with PROOF
set options for the reconstruction of a detector
Set custom reconstruction parameters for a given detector Single set of parameters for all the events
Load CDB entries for all active detectors. By default we load all the entries in <det>/Calib folder.
Initialize AlReconstruction before going into the event loop Should follow the TSelector convention i.e. initialize only the object on the client side
Initialization related to run-loader, vertexer, trackers, recontructors In proof mode it is executed on the slave
run the reconstruction over a single entry from the chain with raw data
run the reconstruction over a single event The event loop is steered in Run method
Create tags for the events in the ESD tree (the ESD tree is always present) In case of empty events the tags will contain dummy values
Reads the trigger decision which is stored in Trigger.root file and fills the corresponding esd entries
check whether detName is contained in detectors if yes, it is removed from detectors
get the reconstructor object and the loader for a detector
create the vertexer Please note that the caller is the owner of the vertexer
create the ITS trackleter for mult. estimation Please note that the caller is the owner of the trackleter
Write space-points which are then used in the alignment procedures For the moment only ITS, TPC, TRD and TOF
The method reads the raw-data error log accumulated within the rawReader. It extracts the raw-data errors related to the current event and stores them into a TClonesArray inside the esd object.
Here execute all the necessary operationis, at the end of the tracking phase, in case that evaluation of PlaneEfficiencies was required for some detector. E.g., write into a DataBase file the PlaneEfficiency which have been evaluated. This Preliminary version works only FOR ITS !!!!! other detectors (TOF,TRD, etc. have to develop their specific codes) Input: none Return: kTRUE if all operations have been done properly, kFALSE otherwise
Here execute all the necessary operations, before of the tracking phase, for the evaluation of PlaneEfficiencies, in case required for some detectors. E.g., read from a DataBase file a first evaluation of the PlaneEfficiency which should be updated/recalculated. This Preliminary version will work only FOR ITS !!!!! other detectors (TOF,TRD, etc. have to develop their specific codes) Input: none Return: kTRUE if all operations have been done properly, kFALSE otherwise
This method should be called only in case AliReconstruction is run within the alieve environment. It will initialize AliEVE in a way so that it can visualize event processed by AliReconstruction. The return flag shows whenever the AliEVE initialization was successful or not.
Runs AliEVE visualisation of the current event. Should be executed only after successful initialization of AliEVE.
Allows to run QA for a selected set of detectors and a selected set of tasks among RAWS, DIGITSR, RECPOINTS and ESDS all selected detectors run the same selected tasks
The method accesses OCDB and retrieves all the available reco-param objects from there.
Match the detector list found in the rec.C or the default 'ALL' to the list found in the GRP (stored there by the shuttle PP which gets the information from ECS)
Abort processing. If what = kAbortProcess, the Process() loop will be aborted. If what = kAbortFile, the current file in a chain will be aborted and the processing will continue with the next file, if there is no next file then Process() will be aborted. Abort() can also be called from Begin(), SlaveBegin(), Init() and Notify(). After abort the SlaveTerminate() and Terminate() are always called. The abort flag can be checked in these methods using GetAbort(). The method is overwritten in AliReconstruction for better handling of reco specific errors
Method that is used in case the event loop is steered from outside, for example by AMORE 'event' is a pointer to the DATE event in the memory
The method parses the output file location string in order to steer properly the selector
Selection of events containing "high" pT tracks
If at least one track is found within 1.5 and 100 GeV (pT)
that was reconstructed by both ITS and TPC, the event is accepted
Fill the ESD friend in the tree. The required fraction of ESD friends is stored in fFractionFriends. We select events where we store the ESD friends according to the following algorithm: 1. Store all Cosmic or Calibration events within the required fraction 2. Sample "high Pt" events within the remaining fraction after step 1. 3. Sample randomly events if we still have remaining slot
delete requested recpoint files produced at current event
require checking the resources left and stopping on excess if 0 : no check is done if >0 : stop reconstruction if exceeds this value if <0 : use as margin to system limits
if some CDB entries must be the same in the simulation and reconstruction, check here
{fFirstEvent = firstEvent; fLastEvent = lastEvent;}
{fUseTrackingErrorsForAlignment = detectors;}
*** Global reconstruction flag setters
{fTreeBuffSize = sz;}
Quality Assurance
{ fQACycles[det] = cycles ; }
Upgrade
{fUpgradeModule = detectors; MatchUpgradeDetector() ; }
Connection to analysis manager. If a macro is set it should contain a function returning an analysis manager object. The macro is ignored in case the analysis manager is set via SetAnalysisManager
{fAnalysisMacro = macropath;}
A method to declare defined trigger classes even if they are not present in the run, needed for proper event selection based on trigger
{fDeclTriggerClasses = trClasses;}