|
10 | 10 | // or submit itself to any jurisdiction. |
11 | 11 |
|
12 | 12 | #include <vector> |
13 | | - |
| 13 | +#include <TMap.h> |
| 14 | +#include <TObjString.h> |
14 | 15 | #include "Framework/ControlService.h" |
15 | 16 | #include "Framework/ConfigParamRegistry.h" |
16 | 17 | #include "Framework/CCDBParamSpec.h" |
@@ -67,8 +68,15 @@ void TrackerDPL::run(ProcessingContext& pc) |
67 | 68 | if (first) { |
68 | 69 | first = false; |
69 | 70 | if (pc.services().get<const o2::framework::DeviceSpec>().inputTimesliceId == 0) { |
70 | | - o2::conf::ConfigurableParam::write(o2::base::NameConf::getConfigOutputFileName(pc.services().get<const o2::framework::DeviceSpec>().name, o2::its::VertexerParamConfig::Instance().getName()), o2::its::VertexerParamConfig::Instance().getName()); |
71 | | - o2::conf::ConfigurableParam::write(o2::base::NameConf::getConfigOutputFileName(pc.services().get<const o2::framework::DeviceSpec>().name, o2::its::TrackerParamConfig::Instance().getName()), o2::its::TrackerParamConfig::Instance().getName()); |
| 71 | + const auto& vtconf = o2::its::VertexerParamConfig::Instance(); |
| 72 | + const auto& trconf = o2::its::TrackerParamConfig::Instance(); |
| 73 | + o2::conf::ConfigurableParam::write(o2::base::NameConf::getConfigOutputFileName(pc.services().get<const o2::framework::DeviceSpec>().name, vtconf.getName()), vtconf.getName()); |
| 74 | + o2::conf::ConfigurableParam::write(o2::base::NameConf::getConfigOutputFileName(pc.services().get<const o2::framework::DeviceSpec>().name, trconf.getName()), trconf.getName()); |
| 75 | + TMap md; |
| 76 | + md.SetOwnerKeyValue(); |
| 77 | + md.Add(new TObjString(vtconf.getName().c_str()), new TObjString(o2::conf::ConfigurableParam::asJSON(vtconf.getName()).c_str())); |
| 78 | + md.Add(new TObjString(trconf.getName().c_str()), new TObjString(o2::conf::ConfigurableParam::asJSON(trconf.getName()).c_str())); |
| 79 | + pc.outputs().snapshot(Output{"META", "ITSTRACKER", 0}, md); |
72 | 80 | } |
73 | 81 | } |
74 | 82 | } |
@@ -138,6 +146,7 @@ DataProcessorSpec getTrackerSpec(bool useMC, bool doStag, bool useGeom, int trgT |
138 | 146 | outputs.emplace_back("ITS", "VERTICESMCPUR", 0, Lifetime::Timeframe); |
139 | 147 | outputs.emplace_back("ITS", "TRACKSMCTR", 0, Lifetime::Timeframe); |
140 | 148 | } |
| 149 | + outputs.emplace_back("META", "ITSTRACKER", 0, Lifetime::Sporadic); |
141 | 150 |
|
142 | 151 | return DataProcessorSpec{ |
143 | 152 | .name = "its-tracker", |
|
0 commit comments