// $Id$ /** * @file rec-from-hltout.C * @brief Detector reconstruction from HLTOUT data * * Example macro to run detector reconstruction from the HLTOUT data * instead of the original detector data. * * Usage: aliroot -b -q rec-from-hltout.C | tee rec-from-hltout.log * * The macro asumes detector ddl raw data to be available in the HLTOUT, * e.g. simulated by sim-hlt-rawddl.C * Input replacement is run for the ITS (Note that only the ITSSDD was * published to HLTOUT) * * The HLTOUT handler implemented in libAliHLTSample.lib is used to * redirect data blocks of type {DDLRAW :SMPL} from the HLTOUT to the * reconstruction input. \b Note: the origin \em SMPL is a special * id just for the purpose of examples. * * @author Matthias.Richter@ift.uib.no * @ingroup alihlt_tutorial */ void rec_from_hltout() { ///////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////// // // setup of the HLT system AliHLTSystem* pHLT=AliHLTPluginBase::GetInstance(); if (!pHLT) { cerr << "fatal error: can not get HLT instance" << endl; } // load libAliHLTSample in order to make HLTOUT handler available pHLT->LoadComponentLibraries("libAliHLTSample.so"); // disable chains from the library agent, not of interest for // this example of data redirection pHLT->ScanOptions("chains="); ///////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////// // // setup of the reconstruction AliReconstruction rec; rec.SetInput("./"); rec.SetRunLocalReconstruction("ITS HLT"); rec.SetRunTracking("ITS"); rec.SetFillESD("ITS HLT"); rec.SetRunQA(":"); rec.SetFillTriggerESD(kFALSE); // set the redirection for ITS SDD rec.SetUseHLTData("ITSSDD"); rec.Run(); }