1414// / @since 2018-04-18
1515// / @brief Processor spec for running TPC CA tracking
1616
17+ #include < TMap.h>
18+ #include < TObjString.h>
19+ #include " GPUO2ConfigurableParam.h"
1720#include " GPUWorkflow/GPUWorkflowSpec.h"
1821#include " Headers/DataHeader.h"
1922#include " Framework/WorkflowSpec.h" // o2::framework::mergeInputs
@@ -807,6 +810,15 @@ void GPURecoWorkflowSpec::run(ProcessingContext& pc)
807810 }
808811 if (mNTFs == 1 && pc.services ().get <const o2::framework::DeviceSpec>().inputTimesliceId == 0 ) { // TPC ConfigurableCarams are somewhat special, need to construct by hand
809812 o2::conf::ConfigurableParam::write (o2::base::NameConf::getConfigOutputFileName (pc.services ().get <const o2::framework::DeviceSpec>().name , " rec_tpc" ), " GPU_rec_tpc,GPU_rec,GPU_proc_param,GPU_proc,GPU_global,trackTuneParams" );
813+ TMap md;
814+ md.SetOwnerKeyValue ();
815+ md.Add (new TObjString (o2::gpu::internal::GPUConfigurableParamGPUSettingsRecTPC::Instance ().getName ().c_str ()), new TObjString (o2::conf::ConfigurableParam::asJSON (o2::gpu::internal::GPUConfigurableParamGPUSettingsRecTPC::Instance ().getName ()).c_str ()));
816+ md.Add (new TObjString (o2::gpu::internal::GPUConfigurableParamGPUSettingsRec::Instance ().getName ().c_str ()), new TObjString (o2::conf::ConfigurableParam::asJSON (o2::gpu::internal::GPUConfigurableParamGPUSettingsRec::Instance ().getName ()).c_str ()));
817+ md.Add (new TObjString (o2::gpu::internal::GPUConfigurableParamGPUSettingsProcessingParam::Instance ().getName ().c_str ()), new TObjString (o2::conf::ConfigurableParam::asJSON (o2::gpu::internal::GPUConfigurableParamGPUSettingsProcessingParam::Instance ().getName ()).c_str ()));
818+ md.Add (new TObjString (o2::gpu::internal::GPUConfigurableParamGPUSettingsProcessing::Instance ().getName ().c_str ()), new TObjString (o2::conf::ConfigurableParam::asJSON (o2::gpu::internal::GPUConfigurableParamGPUSettingsProcessing::Instance ().getName ()).c_str ()));
819+ md.Add (new TObjString (o2::gpu::internal::GPUConfigurableParamGPUSettingsO2::Instance ().getName ().c_str ()), new TObjString (o2::conf::ConfigurableParam::asJSON (o2::gpu::internal::GPUConfigurableParamGPUSettingsO2::Instance ().getName ()).c_str ()));
820+ md.Add (new TObjString (o2::globaltracking::TrackTuneParams::Instance ().getName ().c_str ()), new TObjString (o2::conf::ConfigurableParam::asJSON (o2::globaltracking::TrackTuneParams::Instance ().getName ()).c_str ()));
821+ pc.outputs ().snapshot (Output{" META" , " TPCTRACKER" , 0 }, md);
810822 }
811823
812824 std::unique_ptr<GPUTrackingInOutPointers> ptrsDump;
@@ -1368,6 +1380,7 @@ Outputs GPURecoWorkflowSpec::outputs()
13681380 if (mSpecConfig .outputErrorQA ) {
13691381 outputSpecs.emplace_back (gDataOriginGPU , " ERRORQA" , 0 , Lifetime::Timeframe);
13701382 }
1383+ outputSpecs.emplace_back (" META" , " TPCTRACKER" , 0 , Lifetime::Sporadic);
13711384
13721385 if (mSpecConfig .runITSTracking ) {
13731386 outputSpecs.emplace_back (gDataOriginITS , " TRACKS" , 0 , Lifetime::Timeframe);
@@ -1382,6 +1395,7 @@ Outputs GPURecoWorkflowSpec::outputs()
13821395 outputSpecs.emplace_back (gDataOriginITS , " VERTICESMCPUR" , 0 , Lifetime::Timeframe);
13831396 outputSpecs.emplace_back (gDataOriginITS , " TRACKSMCTR" , 0 , Lifetime::Timeframe);
13841397 }
1398+ outputSpecs.emplace_back (" META" , " ITSTRACKER" , 0 , Lifetime::Sporadic);
13851399 }
13861400
13871401 return outputSpecs;
0 commit comments