本文整理汇总了C++中AliReconstruction::SetRunQA方法的典型用法代码示例。如果您正苦于以下问题:C++ AliReconstruction::SetRunQA方法的具体用法?C++ AliReconstruction::SetRunQA怎么用?C++ AliReconstruction::SetRunQA使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AliReconstruction
的用法示例。
在下文中一共展示了AliReconstruction::SetRunQA方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: rec
void rec() {
// AliLog::SetGlobalDebugLevel(10);
AliCDBManager * man = AliCDBManager::Instance();
man->SetDefaultStorage("alien://Folder=/alice/simulation/2008/v4-10-Release/Residual/");
man->SetSpecificStorage("EMCAL/*","local://DB");
AliReconstruction reco;
AliMagFMaps* field = new AliMagFMaps("Maps","Maps", 2, 1., 10., AliMagFMaps::k5kG);
AliTracker::SetFieldMap(field,kTRUE);
reco.SetUniformFieldTracking(kFALSE);
reco.SetWriteESDfriend();
reco.SetWriteAlignmentData();
AliTPCRecoParam * tpcRecoParam = AliTPCRecoParam::GetLowFluxParam();
AliTPCReconstructor::SetRecoParam(tpcRecoParam);
AliTPCReconstructor::SetStreamLevel(0);
reco.SetRunReconstruction("ITS TPC TRD TOF HMPID PHOS EMCAL MUON T0 VZERO FMD PMD ZDC");
//reco.SetInput("raw.root") ;
//AliPHOSRecoParam* recEmc = new AliPHOSRecoParamEmc();
// recEmc->SetSubtractPedestals(kFALSE);
// AliPHOSReconstructor::SetRecoParamEmc(recEmc);
reco.SetRunQA(kFALSE) ;
TStopwatch timer;
timer.Start();
reco.Run();
timer.Stop();
timer.Print();
}
示例2: rec
void rec() {
AliReconstruction reco;
reco.SetWriteESDfriend();
reco.SetWriteAlignmentData();
reco.SetDefaultStorage("local://$ALICE_ROOT/OCDB");
reco.SetSpecificStorage("GRP/GRP/Data",
Form("local://%s",gSystem->pwd()));
reco.SetRunPlaneEff(kTRUE);
reco.SetRunQA("ALL:ALL") ;
reco.SetQARefDefaultStorage("local://$ALICE_ROOT/QAref") ;
for (Int_t det = 0 ; det < AliQA::kNDET ; det++) {
reco.SetQACycles(det, 999) ;
reco.SetQAWriteExpert(det) ;
}
TStopwatch timer;
timer.Start();
reco.Run();
timer.Stop();
timer.Print();
}
示例3: runReconstruction
void runReconstruction(int seed, const char* input, const char* recoptions, bool rawocdb)
{
AliCDBManager* man = AliCDBManager::Instance();
if ( rawocdb )
{
cout << "**** WILL USE RAW OCDB" << endl;
man->SetDefaultStorage("raw://"); //alien://folder=/alice/data/2011/OCDB?cacheFold=/Users/laurent/OCDBcache");
man->SetSpecificStorage("ITS/Calib/RecoParam","alien://folder=/alice/cern.ch/user/p/ppillot/OCDB_PbPbSim");
}
else
{
man->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
man->SetSpecificStorage("GRP/GRP/Data",
Form("local://%s",gSystem->pwd()));
}
gRandom->SetSeed(seed);
AliReconstruction* MuonRec = new AliReconstruction("galice.root");
MuonRec->SetInput(gSystem->ExpandPathName(input));
MuonRec->SetRunReconstruction("MUON ITS");
MuonRec->SetFillESD("HLT");
MuonRec->SetOption("HLT", "libAliHLTMUON.so");
MuonRec->SetNumberOfEventsPerFile(10000);
MuonRec->SetOption("MUON",recoptions);
MuonRec->SetRunQA("MUON:ALL");
MuonRec->SetQAWriteExpert(AliQAv1::kMUON);
MuonRec->SetQARefDefaultStorage("local://$ALICE_ROOT/QAref") ;
MuonRec->SetWriteESDfriend(kFALSE);
MuonRec->SetCleanESD(kFALSE);
MuonRec->SetStopOnError(kFALSE);
// uncomment the following lines if you want to set custom RecoParam
// instead of getting them from the OCDB
// AliMUONRecoParam *muonRecoParam = AliMUONRecoParam::GetLowFluxParam();
// muonRecoParam->SaveFullClusterInESD(kTRUE,100.);
// MuonRec->SetRecoParam("MUON",muonRecoParam);
MuonRec->Run();
delete MuonRec;
//gObjectTable->Print();
}
示例4: rec
void rec() {
AliReconstruction reco;
reco.SetRunVertexFinder(kFALSE) ;
reco.SetRunV0Finder(kFALSE) ;
reco.SetRunMultFinder(kFALSE) ;
AliQAManager::QAManager(AliQAv1::kSIMMODE) ;
reco.SetCDBSnapshotMode("Sim/OCDBrec.root");
reco.SetRunReconstruction("PHOS") ;
reco.SetRunQA(":") ;
reco.SetRunGlobalQA(kFALSE) ;
TStopwatch timer;
timer.Start();
reco.Run();
timer.Stop();
timer.Print();
}
示例5: recraw
void recraw() {
// AliReconstruction settings
AliReconstruction reco;
reco.SetWriteESDfriend(kTRUE);
reco.SetWriteAlignmentData();
reco.SetInput("raw.root");
reco.SetDefaultStorage("local://$ALICE_ROOT/OCDB");
reco.SetSpecificStorage("GRP/GRP/Data",
Form("local://%s/..",gSystem->pwd()));
reco.SetUseTrackingErrorsForAlignment("ITS");
// all events in one single file
reco.SetNumberOfEventsPerFile(-1);
// switch off cleanESD
reco.SetCleanESD(kFALSE);
reco.SetRunQA("ALL:ALL") ;
reco.SetQARefDefaultStorage("local://$ALICE_ROOT/OCDB") ;
for (Int_t det = 0 ; det < AliQA::kNDET ; det++) {
reco.SetQACycles(det, 9999) ;
reco.SetQAWriteExpert(det) ;
}
AliLog::Flush();
TStopwatch timer;
timer.Start();
reco.Run();
timer.Stop();
timer.Print();
}
示例6: histogramHandlerTest
//.........这里部分代码省略.........
///////////////////////////////////////////////////////////////////////////////////////////////////
//
// define the analysis chain to be run
//
int iMinSlice=0;
int iMaxSlice=35;
int iMinPart=0;
int iMaxPart=5;
TString histogramHandlerInput1;
TString histogramHandlerInput2;
TString histogramHandlerOutput1;
TString histogramHandlerOutput2;
TString rootFileWriterInput1;
TString rootFileWriterInput2;
for (int slice=iMinSlice; slice<=iMaxSlice; slice++) {
for (int part=iMinPart; part<=iMaxPart; part++) {
TString clusterFinderOutput1;
TString clusterFinderOutput2;
TString clusterHistoInput1;
TString clusterHistoInput2;
TString clusterHistoOutput1;
TString clusterHistoOutput2;
TString arg, publisher;
// digit publisher components
int ddlno=768;
if (part>1) ddlno+=72+4*slice+(part-2);
else ddlno+=2*slice+part;
arg.Form("-minid %d -datatype 'DDL_RAW ' 'TPC ' -dataspec 0x%02x%02x%02x%02x", ddlno, slice, slice, part, part);
publisher.Form("DP_%02d_%d", slice, part);
AliHLTConfiguration pubconf(publisher.Data(), "AliRawReaderPublisher", NULL , arg.Data());
// first clusterfinder
clusterFinderOutput1.Form("CF1_%02d_%d", slice, part);
AliHLTConfiguration cfconf(clusterFinderOutput1.Data(), "TPCClusterFinderDecoder", publisher.Data(), "-timebins 446");//-timebins set to simulated data
if (clusterHistoInput1.Length()>0) clusterHistoInput1+=" ";
clusterHistoInput1+=clusterFinderOutput1;
// second clusterfinder
clusterFinderOutput2.Form("CF2_%02d_%d", slice, part);
AliHLTConfiguration cfconf(clusterFinderOutput2.Data(), "TPCClusterFinderDecoder", publisher.Data(), "-timebins 446");//-timebins set to simulated data
if (clusterHistoInput2.Length()>0) clusterHistoInput2+=" ";
clusterHistoInput2+=clusterFinderOutput2;
// first cluster histo component
clusterHistoOutput1.Form("CH1_%02d_%d", slice, part);
AliHLTConfiguration cfconf(clusterHistoOutput1.Data(), "TPCClusterHisto", clusterHistoInput1.Data(), "");
if (histogramHandlerInput1.Length()>0) histogramHandlerInput1+=" ";
histogramHandlerInput1+=clusterHistoOutput1;
//second cluster histo component
clusterHistoOutput2.Form("CH2_%02d_%d", slice, part);
AliHLTConfiguration cfconf(clusterHistoOutput2.Data(), "TPCClusterHisto", clusterHistoInput2.Data(), "");
if (histogramHandlerInput1.Length()>0) histogramHandlerInput1+=" ";
histogramHandlerInput1+=clusterHistoOutput2;
if (histogramHandlerInput2.Length()>0) histogramHandlerInput2+=" ";
histogramHandlerInput2+=clusterHistoOutput2;
}
}
// first histogram handler component
histogramHandlerOutput1.Form("HH1_%02d_%d", slice, part);
AliHLTConfiguration cfconf(histogramHandlerOutput1.Data(), "TPCHistogramHandler", histogramHandlerInput1.Data(), "-use-general");
if (rootFileWriterInput1.Length()>0) rootFileWriterInput1+=" ";
rootFileWriterInput1+=histogramHandlerOutput1;
// second histogram handler component
histogramHandlerOutput2.Form("HH2_%02d_%d", slice, part);
AliHLTConfiguration cfconf(histogramHandlerOutput2.Data(), "TPCHistogramHandler", histogramHandlerInput2.Data(), "-use-general");
if (rootFileWriterInput2.Length()>0) rootFileWriterInput2+=" ";
rootFileWriterInput2+=histogramHandlerOutput2;
AliHLTConfiguration rootFileWriter1("RootFileWriter1", "ROOTFileWriter", rootFileWriterInput1.Data() , "-datafile histogramHandlerFile1");
AliHLTConfiguration rootFileWriter2("RootFileWriter2", "ROOTFileWriter", rootFileWriterInput2.Data() , "-datafile histogramHandlerFile2");
///////////////////////////////////////////////////////////////////////////////////////////////////
//
// Init and run the reconstruction
// All but HLT reconstruction is switched off
//
AliReconstruction rec;
rec.SetInput(input);
rec.SetRunVertexFinder(kFALSE);
rec.SetRunLocalReconstruction("HLT");
rec.SetRunTracking("");
rec.SetLoadAlignFromCDB(0);
rec.SetRunQA(":");
//rec.SetFillESD("HLT");
rec.SetFillESD("");
rec.SetFillTriggerESD(false);
rec.SetOption("HLT", "libAliHLTUtil.so libAliHLTRCU.so libAliHLTTPC.so loglevel=0x7c chains=RootFileWriter1,RootFileWriter2");
rec.Run();
}
示例7: HLTT0Test
// ----------------------------------------------------------------------------
void HLTT0Test(const Char_t *filename, const Char_t *cdbURI,
Int_t minEvent=-1, Int_t maxEvent=-1) {
printf (" ============================================= \n\n");
printf (" TEST T0 RECONSTRUCTION \n\n");
printf (" ============================================= \n");
if(!gSystem->AccessPathName("galice.root")){
cerr << "AliReconstruction on raw data requires to delete galice.root, ";
cerr << "or run at different place." << endl;
cerr << "!!! DO NOT DELETE the galice.root of your simulation, ";
cerr << "but create a subfolder !!!!" << endl;
return;
}
TGrid::Connect("alien");
if (gSystem->AccessPathName(filename)) {
cerr << "can not find file " << filename << endl;
return;
}
// -- connect to the GRID if we use a file or OCDB from the GRID
TString struri=cdbURI;
TString strfile=filename;
if (struri.BeginsWith("raw://") ||
strfile.Contains("://") && !strfile.Contains("local://")) {
TGrid::Connect("alien");
}
// -- Set the CDB storage location
AliCDBManager * man = AliCDBManager::Instance();
man->SetDefaultStorage(cdbURI);
if (struri.BeginsWith("local://")) {
// set specific storage for GRP entry
// search in the working directory and one level above, the latter
// follows the standard simulation setup like e.g. in test/ppbench
if (!gSystem->AccessPathName("GRP/GRP/Data")) {
man->SetSpecificStorage("GRP/GRP/Data", "local://$PWD");
} else if (!gSystem->AccessPathName("../GRP/GRP/Data")) {
man->SetSpecificStorage("GRP/GRP/Data", "local://$PWD/..");
} else {
cerr << "can not find a GRP entry, please run the macro in the folder" << endl;
cerr << "of a simulated data sample, or specify a GRID OCDB" << endl;
HLTT0Test();
return;
}
}
//////////////////////////////////////////////////////////////////////////////////////
//
// Reconstruction settings
AliReconstruction rec;
if (minEvent>=0 || maxEvent>minEvent) {
if (minEvent<0) minEvent=0;
if (maxEvent<minEvent) maxEvent=minEvent;
rec.SetEventRange(minEvent,maxEvent);
}
rec.SetRunReconstruction("HLT");
rec.SetLoadAlignFromCDB(kFALSE);
rec.SetWriteESDfriend(kFALSE);
// due to bug ...
// StopOnError needs to be disabled
rec.SetStopOnError(kFALSE);
rec.SetRunVertexFinder(kFALSE);
rec.SetInput(filename);
// QA options
rec.SetRunQA(":") ;
//rec.SetQARefDefaultStorage("local://$ALICE_ROOT/QAref") ;
//////////////////////////////////////////////////////////////////////////////////////
//
// setup the HLT system
AliHLTSystem* pHLT=AliHLTPluginBase::GetInstance();
/*
// define a data publisher configuration for T0 raw data
AliHLTConfiguration publisher("RAW-Publisher",
"AliRawReaderPublisher",
"",
"-equipmentid 3584 "
"-datatype 'DDL_RAW ' 'VZRO' "
"-dataspec 0x01"
);
// define configuration of the T0Reconstruction component
AliHLTConfiguration vzeroReco("T0-Reconstruction",
"T0Reconstruction",
"RAW-Publisher",
""
);
// define configuration of the GlobalEsdConverter component
AliHLTConfiguration esdConverter("GLOBAL-ESD-Converter",
"GlobalEsdConverter",
"T0-Reconstruction",
""
//.........这里部分代码省略.........
示例8: rec_vertexer
//.........这里部分代码省略.........
int iMaxPart=5;
TString writerInput;
TString mergerInput;
TString histoInput;
TString histogramHandlerInputClusterFinder;
TString cdumpInput;
for (int slice=iMinSlice; slice<=iMaxSlice; slice++) {
TString trackerInput;
for (int part=iMinPart; part<=iMaxPart; part++) {
TString arg, publisher, cf;
TString clusterHistoOutput;
// raw data publisher components
int ddlno=768;
if (part>1) ddlno+=72+4*slice+(part-2);
else ddlno+=2*slice+part;
arg.Form("-minid %d -datatype 'DDL_RAW ' 'TPC ' -dataspec 0x%02x%02x%02x%02x -verbose", ddlno, slice, slice, part, part);
publisher.Form("DP_%02d_%d", slice, part);
new AliHLTConfiguration(publisher.Data(), "AliRawReaderPublisher", NULL , arg.Data());
// cluster finder components
cf.Form("CF_%02d_%d", slice, part);
new AliHLTConfiguration(cf.Data(), "TPCClusterFinder32Bit", publisher.Data(), "-solenoidBz -5");
if (trackerInput.Length()>0) trackerInput+=" ";
trackerInput+=cf;
if (writerInput.Length()>0) writerInput+=" ";
writerInput+=cf;
if (histoInput.Length()>0) histoInput+=" ";
histoInput+=cf;
if (cdumpInput.Length()>0) cdumpInput+=" ";
cdumpInput+=cf;
}
TString tracker;
// tracker components
tracker.Form("TR_%02d", slice);
new AliHLTConfiguration(tracker.Data(), "TPCCATracker", trackerInput.Data(), "");
if (writerInput.Length()>0) writerInput+=" ";
writerInput+=tracker;
if (mergerInput.Length()>0) mergerInput+=" ";
mergerInput+=tracker;
//add all slice tracks to histo input
//if (histoInput.Length()>0) histoInput+=" ";
//histoInput+=tracker;
}
// GlobalMerger component
new AliHLTConfiguration("globalmerger","TPCCAGlobalMerger",mergerInput.Data(),"");
//add all global tracks to histo input
if (histoInput.Length()>0) histoInput+=" ";
histoInput+="globalmerger";
// specify whether to write all blocks separately or merge the tracks
// and convert to ESD
bool writeBlocks=false;
// the esd converter configuration
new AliHLTConfiguration("esd-converter", "GlobalEsdConverter" , "globalmerger", "-fitTracksToVertex 1");
new AliHLTConfiguration("global-vertexer", "GlobalVertexer" , "esd-converter", "");
new AliHLTConfiguration("v0HistoOut", "V0Histo" , "global-vertexer", "");
new AliHLTConfiguration("GVhistorootfile", "ROOTFileWriter", "global-vertexer" , "-datafile primaryVertexHistograms -concatenate-events -overwrite");
new AliHLTConfiguration("v0historootfile", "ROOTFileWriter", "v0HistoOut" , "-datafile secondaryVertexHistograms -concatenate-events -overwrite");
option+="v0historootfile";
option+=",GVhistorootfile";
///////////////////////////////////////////////////////////////////////////////////////////////////
//
// Init and run the reconstruction
// All but HLT reconstructio is switched off
//
AliReconstruction rec;
rec.SetDefaultStorage("local://$ALICE_ROOT/OCDB");
// rec.SetDefaultStorage("local://$HOME/HCDB");
//rec.SetSpecificStorage("GRP/GRP/Data",
// Form("local://%s",gSystem->pwd()));
// rec.SetSpecificStorage("GRP/GRP/Data","local:///opt/HLT-public/OCDB/LHC09c");
// rec.SetSpecificStorage("GRP/CTP/Config","local:///opt/HLT-public/OCDB/LHC09c");
// rec.SetSpecificStorage("GRP/CTP/Config", "local:///opt/HLT-public/rec/LHC09c/");
rec.SetInput(input);
rec.SetRunVertexFinder(kFALSE);
rec.SetRunReconstruction("HLT"); //add TPC for comparison
rec.SetLoadAlignFromCDB(0);
rec.SetRunQA(":");
rec.SetOption("HLT",option);
// switch off cleanESD
rec.SetCleanESD(kFALSE);
// rec.SetEventRange(0, 100);
rec.Run();
}
示例9: trackhisto
void trackhisto(const char *filename, const char *cdbURI, int minEvent=-1, int maxEvent=-1, Bool_t bTracklets=kFALSE){
if(!gSystem->AccessPathName("galice.root")){
cerr << "Remove galice.root or run in a different folder." << endl;
return;
}
if (!filename) {
cerr << "please specify input or run without arguments" << endl;
return;
}
////////////////////////////////////////////////////////////////////
//
// init the HLT system in order to define the analysis chain below
//
////////////////////////////////////////////////////////////////////
AliHLTSystem *gHLT = AliHLTPluginBase::GetInstance();
int iMinSlice = 0;
int iMaxSlice = 35;
int iMinPart = 0;
int iMaxPart = 5;
TString tracklets;
for(int slice=iMinSlice; slice<=iMaxSlice; slice++){
TString trackerInput;
for(int part=iMinPart; part<=iMaxPart; part++){
TString arg, publisher, cf;
// raw data publisher components
int ddlno=768;
if (part>1) ddlno+=72+4*slice+(part-2);
else ddlno+=2*slice+part;
arg.Form("-minid %d -datatype 'DDL_RAW ' 'TPC ' -dataspec 0x%02x%02x%02x%02x -verbose", ddlno, slice, slice, part, part);
publisher.Form("DP_%02d_%d", slice, part);
AliHLTConfiguration pubconf(publisher.Data(), "AliRawReaderPublisher", NULL , arg.Data());
// cluster finder components
cf.Form("CF_%02d_%d", slice, part);
AliHLTConfiguration cfconf(cf.Data(), "TPCClusterFinder32Bit", publisher.Data(), "");
if (trackerInput.Length()>0) trackerInput+=" ";
trackerInput+=cf;
}
TString tracker, converted_tracklet;
// tracker components
tracker.Form("TR_%02d", slice);
converted_tracklet.Form("CONVTR_%02d", slice);
AliHLTConfiguration trackerconf(tracker.Data(), "TPCCATracker", trackerInput.Data(), "");
AliHLTConfiguration convertedconf(converted_tracklet.Data(), "TPCCATrackerOutputConverter", tracker.Data(), "");
if (tracklets.Length()>0) tracklets+=" ";
tracklets+=converted_tracklet;
}
TString histoInput;
if(bTracklets==kTRUE){
if(histoInput.Length()>0)
histoInput+=" ";
histoInput+=tracklets;
AliHLTConfiguration tracklethiconf("tracklethi", "TPCTrackHisto", histoInput.Data(), "");
AliHLTConfiguration trackletrwfconf("trackletrfw", "ROOTFileWriter", "tracklethi", "-datafile TrackletHisto -concatenate-events -overwrite");
}
else {
if(histoInput.Length()>0)
histoInput+=" ";
histoInput+="TPC-clusters";
histoInput+=" ";
histoInput+="TPC-globalmerger";
AliHLTConfiguration trhiconf("trhi", "TPCTrackHisto", histoInput.Data(), "");
AliHLTConfiguration rwfconf("rfw", "ROOTFileWriter", "trhi", "-datafile TrackHisto -concatenate-events -overwrite");
}
AliReconstruction rec;
rec.SetRunQA(":");
rec.SetInput(filename);
// connect to the GRID if we use a file or OCDB from the GRID
TString struri = cdbURI;
TString strfile = filename;
if(struri.BeginsWith("raw://") || strfile.Contains("://") && !strfile.Contains("local://")){
TGrid::Connect("alien");
}
AliCDBManager *man = AliCDBManager::Instance();
man->SetDefaultStorage(cdbURI);
//.........这里部分代码省略.........
示例10: sampleRawAnalysis
//.........这里部分代码省略.........
TGrid::Connect("alien");
}
// Set the CDB storage location
AliCDBManager * man = AliCDBManager::Instance();
man->SetDefaultStorage(cdbURI);
if (struri.BeginsWith("local://")) {
// set specific storage for GRP entry
// search in the working directory and one level above, the latter
// follows the standard simulation setup like e.g. in test/ppbench
if (!gSystem->AccessPathName("GRP/GRP/Data")) {
man->SetSpecificStorage("GRP/GRP/Data", "local://$PWD");
} else if (!gSystem->AccessPathName("../GRP/GRP/Data")) {
man->SetSpecificStorage("GRP/GRP/Data", "local://$PWD/..");
} else {
cerr << "can not find a GRP entry, please run the macro in the folder" << endl;
cerr << "of a simulated data sample, or specify a GRID OCDB" << endl;
sampleRawAnalysis();
return;
}
}
//////////////////////////////////////////////////////////////////////////////////////
//
// Reconstruction settings
AliReconstruction rec;
if (minEvent>=0 || maxEvent>minEvent) {
if (minEvent<0) minEvent=0;
if (maxEvent<minEvent) maxEvent=minEvent;
rec.SetEventRange(minEvent,maxEvent);
}
rec.SetRunReconstruction("HLT");
rec.SetLoadAlignFromCDB(kFALSE);
rec.SetWriteESDfriend(kFALSE);
// due to bug ...
// StopOnError needs to be disabled
rec.SetStopOnError(kFALSE);
rec.SetRunVertexFinder(kFALSE);
rec.SetInput(filename);
// QA options
rec.SetRunQA(":") ;
//rec.SetQARefDefaultStorage("local://$ALICE_ROOT/QAref") ;
//////////////////////////////////////////////////////////////////////////////////////
//
// setup the HLT system
AliHLTSystem* pHLT=AliHLTPluginBase::GetInstance();
// define a data publisher configuration
// arguments:
// 1) id of the configuartion, later used to refer to this configuration
// 2) id of the component to run
// 3) parents, no parents for publisher components
// 4) optional component arguments
// publish link #512, the first link (numbered 0) of SSD
AliHLTConfiguration publisher("RAW-Publisher",
"AliRawReaderPublisher",
"",
"-minid 512 "
"-datatype 'DDL_RAW ' 'ISSD' "
"-dataspec 0x01"
);
// define configuration of the SampleRawAnalyis component
// arguments:
// 1) id of the configuartion, later used to refer to this configuration
// 2) id of the component to run
// 3) parents, here the publisher configuration defined above
// 4) optional component arguments
AliHLTConfiguration rawanalysis("RAW-Analysis",
"SampleRawAnalysis",
"RAW-Publisher",
"-mandatory1 test "
"-verbose"
);
// set option for the HLT module in AliReconstruction
// arguments
// - ignore-hltout : ignore the HLTOUT payload from the HLT DDLs
// - libraries to be used as plugins
// - loglevel=0x7c : Important, Info, Warning, Error, Fatal
// - chains=RAW-Analysis : chains to be run
rec.SetOption("HLT",
"ignore-hltout "
"libAliHLTUtil.so libAliHLTSample.so "
"loglevel=0x7c "
"chains=RAW-Analysis "
);
rec.SetRunPlaneEff(kFALSE);
// switch off cleanESD
rec.SetCleanESD(kFALSE);
AliLog::Flush();
rec.Run();
}
示例11: recCPass0
//.........这里部分代码省略.........
//
// Load some system libs for Grid and monitoring
// Set the CDB storage location
AliCDBManager * man = AliCDBManager::Instance();
man->SetDefaultStorage(ocdb);
// Reconstruction settings
AliReconstruction rec;
//
// do we extract the TPC recpoints in advance
Int_t preclustTPC = TString(gSystem->Getenv("preclusterizeTPC")).Atoi();
Bool_t noTPCLocalRec = preclustTPC==1;
if (noTPCLocalRec) printf("preclustTPC = %d: TPC local reconstruction assumed to be already done\n", preclustTPC);
else printf("preclustTPC = %d: TPC local reconstruction assumed to NOT be already done\n", preclustTPC);
//
if (gSystem->Getenv("disableOuter")!=NULL){
TString disOuter = gSystem->Getenv("disableOuter");
TString disOuterLoc = disOuter;
if (noTPCLocalRec) {
disOuterLoc.ReplaceAll("TPC","");
disOuterLoc.ReplaceAll("HLT","");
}
rec.SetRunReconstruction(disOuter.Data());
rec.SetRunLocalReconstruction(disOuterLoc.Data());
}
else if (noTPCLocalRec) {
rec.SetRunReconstruction("ALL -HLT");
rec.SetRunLocalReconstruction("ALL -TPC -HLT");
}
else {
rec.SetRunLocalReconstruction("ALL");
}
// Upload CDB entries from the snapshot (local root file) if snapshot exist
if (gSystem->AccessPathName("OCDB.root", kFileExists)==0) {
rec.SetDefaultStorage("local://");
rec.SetCDBSnapshotMode("OCDB.root");
}
else {
// setup ocdb by custom (if any) or default settings
if (gSystem->AccessPathName("localOCDBaccessConfig.C", kFileExists)==0) {
gROOT->LoadMacro("localOCDBaccessConfig.C");
localOCDBaccessConfig();
}else { // default settings
AliCDBManager* man = AliCDBManager::Instance();
man->SetRaw(kTRUE);
}
TString cdbMode = gSystem->Getenv("OCDB_SNAPSHOT_CREATE");
if (cdbMode == "kTRUE") {
gROOT->LoadMacro("$ALIDPG_ROOT/MC/CreateSnapshot.C");
CreateSnapshot("OCDB.root",filename);
return;
}
}
// All friends
rec.SetFractionFriends(2.0);
// AliReconstruction settings - hardwired MB trigger for calibration
TString newfilename = filename;
newfilename += options;
rec.SetInput(newfilename.Data());
// Set protection against too many events in a chunk (should not happen)
if (nevents>0) rec.SetEventRange(0,nevents);
// Remove recpoints after each event
TString delRecPoints="TPC TRD ITS";
if (noTPCLocalRec) delRecPoints.ReplaceAll("TPC","");
rec.SetDeleteRecPoints(delRecPoints.Data());
//
// Switch off the V0 finder - saves time!
// rec.SetRunMultFinder(kFALSE);
rec.SetRunV0Finder(kFALSE);
//
// QA options - all QA is off
//
rec.SetRunQA(":");
rec.SetRunGlobalQA(kFALSE);
// AliReconstruction settings
rec.SetWriteESDfriend(kTRUE);
rec.SetWriteAlignmentData();
rec.SetUseTrackingErrorsForAlignment("ITS");
rec.SetCleanESD(kFALSE);
// ITS options (see ALIROOT-7179)
float itsErrY2[6]={0., 0., 0.1*0.1, 0.1*.1, 0.,0.};
TVectorF *vecITSErrY2 = new TVectorF(6, itsErrY2);
AliITSReconstructor::SetExtraErrorY2(vecITSErrY2);
//Ignore SetStopOnError
rec.SetStopOnError(kFALSE);
AliLog::Flush();
rec.Run();
}
示例12: rec
void rec(const char *filename="raw.root", const char* options="")
{
/////////////////////////////////////////////////////////////////////////////////////////
//
// Reconstruction script for RAW data
//
/////////////////////////////////////////////////////////////////////////////////////////
AliReconstruction rec;
// Set reconstruction flags (skip detectors here if neded with -<detector name>
// do we extract the TPC recpoints in advance
Int_t preclustTPC = TString(gSystem->Getenv("preclusterizeTPC")).Atoi();
Bool_t noTPCLocalRec = preclustTPC==1;
if (noTPCLocalRec) printf("preclustTPC = %d: TPC local reconstruction assumed to be already done\n", preclustTPC);
else printf("preclustTPC = %d: TPC local reconstruction assumed to NOT be already done\n", preclustTPC);
//
if (noTPCLocalRec) {
rec.SetRunReconstruction("ALL -HLT");
rec.SetRunLocalReconstruction("ALL -TPC -HLT");
}
else {
rec.SetRunLocalReconstruction("ALL");
}
// Upload CDB entries from the snapshot (local root file) if snapshot exist
if (gSystem->AccessPathName("OCDB.root", kFileExists)==0) {
rec.SetDefaultStorage("local://");
rec.SetCDBSnapshotMode("OCDB.root");
}
else {
// setup ocdb by custom (if any) or default settings
if (gSystem->AccessPathName("OCDBconfig.C", kFileExists)==0) {
gROOT->Macro("OCDBconfig.C");
}
else { // default settings
AliCDBManager* man = AliCDBManager::Instance();
man->SetRaw(kTRUE);
}
//
TString cdbMode = gSystem->Getenv("OCDB_SNAPSHOT_CREATE");
if (cdbMode == "kTRUE") {
gROOT->LoadMacro("$ALIDPG_ROOT/MC/CreateSnapshot.C");
CreateSnapshot("OCDB.root",filename);
return;
}
}
// removing apparently pile-up clusters to speadup reconstruction
const double kZOutSectorCut = 3.; // cut on clusters on wrong side of CE (added to extendedRoadZ)
AliTPCReconstructor::SetZOutSectorCut(kZOutSectorCut);
// QA options
// rec.SetRunQA("Global:ESDs") ;
// rec.SetRunQA(":") ;
// rec.SetRunQA("ALL:ALL") ;
rec.SetRunQA("Global MUON:ALL") ;
rec.SetQARefDefaultStorage("local://$ALICE_ROOT/QAref") ;
// AD stuff (see ALIROOT-6663)
// rec.SetOption("AD", "+SaturationCorrection"); // --> not needed anymore, see https://alice.its.cern.ch/jira/browse/ALIROOT-6778
// AliReconstruction settings
rec.SetWriteESDfriend(kTRUE);
rec.SetWriteAlignmentData();
TString filenamewithopt = filename;
filenamewithopt += options;
rec.SetInput(filenamewithopt.Data());
rec.SetUseTrackingErrorsForAlignment("ITS");
// Specific AD storage, see https://alice.its.cern.ch/jira/browse/ALIROOT-6056
// rec.SetSpecificStorage("AD/Calib/TimeSlewing", "alien://Folder=/alice/simulation/2008/v4-15-Release/Ideal");
// switch off cleanESD
rec.SetCleanESD(kFALSE);
//Ignore SetStopOnError
rec.SetStopOnError(kFALSE);
// Delete recpoints
// Remove recpoints after each event
TString delRecPoints="TPC TRD";
if (noTPCLocalRec) delRecPoints.ReplaceAll("TPC","");
rec.SetDeleteRecPoints(delRecPoints.Data());
//
// Set 0.7% as fraction of friends (Ruben, 2017-08-22)
rec.SetFractionFriends(0.007);
AliLog::Flush();
rec.Run();
}
示例13: cal_hlt_tpc_offline
//.........这里部分代码省略.........
AliHLTSystem* gHLT=AliHLTPluginBase::GetInstance();
//gHLT.SwitchAliLog(0);
///////////////////////////////////////////////////////////////////////////////////////////////////
//
// define the analysis chain to be run
//
bool sectorClusterer=true; // run clusterer on sector or DDL level
// check if the AliRawReaderMemory supports multiple buffers
TClass* info=TClass::GetClass("AliRawReaderMemory");
TList* methods=info->GetListOfAllPublicMethods();
if (sectorClusterer && !methods->FindObject("AddBuffer")) {
cerr << "warning: AliRawReaderMemory does not support multiple buffers, falling back to run clusterer on DDL level" << endl;
sectorClusterer=false;
}
int iMinSlice=0;
int iMaxSlice=35;
int iMinPart=0;
int iMaxPart=5;
int DDLNoFromSlicePatch(int, int);
TString writerInput;
TString trackerInput;
TString calibratorInput;
for (int slice=iMinSlice; slice<=iMaxSlice; slice++) {
TString arg, clustererInput;
for (int part=iMinPart; part<=iMaxPart; part++) {
TString publisher, cf;
// raw data publisher components
int ddlno=DDLNoFromSlicePatch(slice, part);
arg.Form("-minid %d -datatype 'DDL_RAW ' 'TPC ' -dataspec 0x%02x%02x%02x%02x -verbose", ddlno, slice, slice, part, part);
publisher.Form("DP_%02d_%d", slice, part);
AliHLTConfiguration pubconf(publisher.Data(), "AliRawReaderPublisher", NULL , arg.Data());
if (!sectorClusterer) {
// cluster finder components
cf.Form("CF_%02d_%d", slice, part);
AliHLTConfiguration cfconf(cf.Data(), "TPCOfflineClusterer", publisher.Data(), "");
if (trackerInput.Length()>0) trackerInput+=" ";
trackerInput+=cf;
//if (writerInput.Length()>0) writerInput+=" ";
//writerInput+=cf;
} else {
if (clustererInput.Length()>0) clustererInput+=" ";
clustererInput+=publisher;
}
}
if (sectorClusterer) {
// cluster finder components
cf.Form("CF_%02d", slice);
AliHLTConfiguration cfconf(cf.Data(), "TPCOfflineClusterer", clustererInput.Data(), "");
if (trackerInput.Length()>0) trackerInput+=" ";
trackerInput+=cf;
}
}
// one global tracker component
TString tracker;
tracker.Form("Global_TR");
AliHLTConfiguration trackerconf(tracker.Data(), "TPCOfflineTrackerCalib", trackerInput.Data(), "");
if (writerInput.Length()>0) writerInput+=" ";
calibratorInput+=tracker;
// one global calibration component
TString calibrator;
calibrator.Form("Global_Calib");
AliHLTConfiguration calibconf(calibrator.Data(), "TPCOfflineCalibration", calibratorInput.Data(), "");
if (writerInput.Length()>0) writerInput+=" ";
writerInput+=calibrator;
// the writer configuration
AliHLTConfiguration rootfwconf("sink1", "ROOTFileWriter", writerInput.Data(), "-specfmt=_%d -subdir=out_%d -idfmt=_0x%08x");
//AliHLTConfiguration esdwconf("sink1", "EsdCollector" , writerInput.Data(), "-directory hlt-tpc-offline");
///////////////////////////////////////////////////////////////////////////////////////////////////
//
// Init and run the reconstruction
// All but HLT reconstructio is switched off
//
AliReconstruction rec;
rec.SetInput(input);
rec.SetRunVertexFinder(kFALSE);
rec.SetRunLocalReconstruction("HLT");
rec.SetRunTracking("");
rec.SetLoadAlignFromCDB(0);
rec.SetFillESD("");
rec.SetRunQA(":");
rec.SetRunGlobalQA(kFALSE);
rec.SetFillTriggerESD(kFALSE);
rec.SetOption("HLT", "libAliHLTUtil.so libAliHLTRCU.so libANALYSIS.so libANALYSISalice.so libTPCcalib.so libAliHLTTPC.so loglevel=0x7c chains=sink1");
rec.Run();
}
示例14: main_recCPass1_OuterDet
void main_recCPass1_OuterDet(const char *filename="raw.root",Int_t nevents=-1, const char *ocdb="raw://", Bool_t useFullITS=kFALSE)
{
// Load some system libs for Grid and monitoring
// Set the CDB storage location
AliCDBManager * man = AliCDBManager::Instance();
man->SetDefaultStorage(ocdb);
// Reconstruction settings
AliReconstruction rec;
// Upload CDB entries from the snapshot (local root file) if snapshot exist
if (gSystem->AccessPathName("OCDB.root", kFileExists)==0) {
man->SetDefaultStorage("local://");
man->SetRaw(kFALSE);
man->SetSnapshotMode("OCDB.root");
}
if (gSystem->AccessPathName("localOCDBaccessConfig.C", kFileExists)==0) {
gInterpreter->ProcessLine("localOCDBaccessConfig();");
}
if(!useFullITS){
// only SPD-trackletting will be done
printf("Special ITS configuration: only SPD-trackletting will be done\n");
rec.SetRecoParam("ITS",GetSpecialITSRecoParam());
}
// All friends
rec.SetFractionFriends(1.0);
// AliReconstruction settings - hardwired MB trigger for calibration
TString newfilename = filename;
newfilename += "?Trigger=kCalibOuter";
rec.SetInput(newfilename.Data());
// Set protection against too many events in a chunk (should not happen)
if (nevents>0) rec.SetEventRange(0,nevents);
// Remove recpoints after each event
rec.SetDeleteRecPoints("ITS MUON EMCAL PHOS VZERO T0");
// Switch off the V0 finder - saves time!
rec.SetRunV0Finder(kFALSE);
//
// QA options - all QA is off
//
rec.SetRunQA(":");
rec.SetRunGlobalQA(kFALSE);
// AliReconstruction settings
rec.SetWriteESDfriend(kFALSE);
if(!useFullITS) rec.SetWriteAlignmentData(kFALSE);
else rec.SetWriteAlignmentData();
rec.SetUseTrackingErrorsForAlignment("ITS");
rec.SetRunReconstruction("ITS MUON EMCAL PHOS VZERO T0");
rec.SetFillESD("ITS MUON EMCAL PHOS VZERO T0");
rec.SetCleanESD(kFALSE);
// Specific reco params for ZDC (why isn't this automatic?)
// rec.SetRecoParam("ZDC",AliZDCRecoParamPbPb::GetHighFluxParam(2760));
//Ignore SetStopOnError
rec.SetStopOnError(kFALSE);
AliLog::Flush();
rec.Run();
}