Skip to content

Commit b17041d

Browse files
committed
Possibility to request TPC occupancy map w/o askig for clusters
1 parent b78b50c commit b17041d

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,7 @@ struct DataRequest {
225225
void requestITSClusters(bool mc);
226226
void requestMFTClusters(bool mc);
227227
void requestTPCClusters(bool mc);
228+
void requestTPCOccMap();
228229
void requestTPCTriggers();
229230
void requestTOFClusters(bool mc);
230231
void requestTRDTracklets(bool mc);
@@ -377,6 +378,7 @@ struct RecoContainer {
377378
void addITSClusters(o2::framework::ProcessingContext& pc, bool mc);
378379
void addMFTClusters(o2::framework::ProcessingContext& pc, bool mc);
379380
void addTPCClusters(o2::framework::ProcessingContext& pc, bool mc, bool shmap, bool occmap);
381+
void addTPCOccMap(o2::framework::ProcessingContext& pc);
380382
void addTPCTriggers(o2::framework::ProcessingContext& pc);
381383
void addTOFClusters(o2::framework::ProcessingContext& pc, bool mc);
382384
void addHMPClusters(o2::framework::ProcessingContext& pc, bool mc);

DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ void DataRequest::requestTPCTracks(bool mc)
123123
addInput({"trackTPCClRefs", "TPC", "CLUSREFS", 0, Lifetime::Timeframe});
124124
if (requestMap.find("clusTPC") != requestMap.end()) {
125125
addInput({"clusTPCshmap", "TPC", "CLSHAREDMAP", 0, Lifetime::Timeframe});
126-
addInput({"clusTPCoccmap", "TPC", "TPCOCCUPANCYMAP", 0, Lifetime::Timeframe});
126+
requestTPCOccMap();
127127
}
128128
if (mc) {
129129
addInput({"trackTPCMCTR", "TPC", "TRACKSMCLBL", 0, Lifetime::Timeframe});
@@ -267,6 +267,12 @@ void DataRequest::requestMFTClusters(bool mc)
267267
requestMap["clusMFT"] = mc;
268268
}
269269

270+
void DataRequest::requestTPCOccMap()
271+
{
272+
addInput({"clusTPCoccmap", "TPC", "TPCOCCUPANCYMAP", 0, Lifetime::Timeframe});
273+
requestMap["TPCOcc"] = false;
274+
}
275+
270276
void DataRequest::requestTPCClusters(bool mc)
271277
{
272278
addInput({"clusTPC", ConcreteDataTypeMatcher{"TPC", "CLUSTERNATIVE"}, Lifetime::Timeframe});
@@ -275,7 +281,7 @@ void DataRequest::requestTPCClusters(bool mc)
275281
}
276282
if (requestMap.find("trackTPC") != requestMap.end()) {
277283
addInput({"clusTPCshmap", "TPC", "CLSHAREDMAP", 0, Lifetime::Timeframe});
278-
addInput({"clusTPCoccmap", "TPC", "TPCOCCUPANCYMAP", 0, Lifetime::Timeframe});
284+
requestTPCOccMap();
279285
}
280286
if (mc) {
281287
addInput({"clusTPCMC", ConcreteDataTypeMatcher{"TPC", "CLNATIVEMCLBL"}, Lifetime::Timeframe});
@@ -704,10 +710,17 @@ void RecoContainer::collectData(ProcessingContext& pc, const DataRequest& reques
704710
addMFTClusters(pc, req->second);
705711
}
706712

713+
req = reqMap.find("TPCOcc");
714+
bool TPCOccDone = false;
715+
if (req != reqMap.end()) {
716+
TPCOccDone = true;
717+
addTPCOccMap(pc);
718+
}
719+
707720
req = reqMap.find("clusTPC");
708721
if (req != reqMap.end()) {
709722
auto tracksON = reqMap.find("trackTPC") != reqMap.end();
710-
addTPCClusters(pc, req->second, tracksON, tracksON);
723+
addTPCClusters(pc, req->second, tracksON, tracksON && (!TPCOccDone));
711724
}
712725

713726
req = reqMap.find("trigTPC");
@@ -1100,6 +1113,12 @@ void RecoContainer::addMFTClusters(ProcessingContext& pc, bool mc)
11001113
}
11011114
}
11021115

1116+
//__________________________________________________________
1117+
void RecoContainer::addTPCOccMap(ProcessingContext& pc)
1118+
{
1119+
occupancyMapTPC = pc.inputs().get<gsl::span<unsigned int>>("clusTPCoccmap");
1120+
}
1121+
11031122
//__________________________________________________________
11041123
void RecoContainer::addTPCClusters(ProcessingContext& pc, bool mc, bool shmap, bool occmap)
11051124
{

0 commit comments

Comments
 (0)