16#include "TStopwatch.h"
54namespace globaltracking
60 HMPMatcherSpec(std::shared_ptr<DataRequest> dr, std::shared_ptr<o2::base::GRPGeomRequest> gr,
bool useMC) : mDataRequest(dr), mGGCCDBRequest(gr), mUseMC(useMC) {}
68 std::shared_ptr<DataRequest> mDataRequest;
69 std::shared_ptr<o2::base::GRPGeomRequest> mGGCCDBRequest;
72 bool mDoTPCRefit =
false;
101 auto creationTime = DataRefUtils::getHeader<DataProcessingHeader*>(pc.
inputs().
getFirstValid(
true))->creation;
129 mMatcher.
run(recoData);
141 LOGF(
debug,
"HMP matching total timing: Cpu: %.3e Real: %.3e s in %d slots",
142 mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1);
148 auto dataRequest = std::make_shared<DataRequest>();
153 dataRequest->requestTracks(
src, useMC);
154 dataRequest->requestClusters(GID::getSourceMask(
GID::HMP), useMC);
156 auto ggRequest = std::make_shared<o2::base::GRPGeomRequest>(
false,
165 std::vector<OutputSpec> outputs;
176 AlgorithmSpec{adaptFromTask<HMPMatcherSpec>(dataRequest, ggRequest, useMC)},
Definition of the GeometryManager class.
Helper for geometry and GRP related CCDB requests.
Header of the General Run Parameters object.
Accessor for TrackParCov derived objects from multiple containers.
Global index for barrel track: provides provenance (detectors combination), index in respective array...
std::vector< o2::dataformats::MatchInfoHMP > MatchOutputType
Definition of the Names Generator class.
Definition of the ITS track.
Result of refitting TPC-ITS matched track.
Result of refitting TPC with TOF match constraint.
void checkUpdates(o2::framework::ProcessingContext &pc)
static GRPGeomHelper & instance()
void setRequest(std::shared_ptr< GRPGeomRequest > req)
void snapshot(const Output &spec, T const &object)
DataAllocator & outputs()
The data allocator is used to allocate memory for the output data.
InputRecord & inputs()
The inputs associated with this processing context.
void init(InitContext &ic) final
void run(ProcessingContext &pc) final
~HMPMatcherSpec() override=default
void endOfStream(framework::EndOfStreamContext &ec) final
This is invoked whenever we have an EndOfStream event.
HMPMatcherSpec(std::shared_ptr< DataRequest > dr, std::shared_ptr< o2::base::GRPGeomRequest > gr, bool useMC)
void finaliseCCDB(ConcreteDataMatcher &matcher, void *obj) final
std::vector< o2::dataformats::MatchInfoHMP > & getMatchedTrackVector(o2::globaltracking::MatchHMP::trackType index)
std::vector< o2::MCCompLabel > & getMatchedHMPLabelsVector(o2::globaltracking::MatchHMP::trackType index)
get vector of HMP label of matched tracks
void run(const o2::globaltracking::RecoContainer &inp)
< perform matching for provided input
constexpr o2::header::DataOrigin gDataOriginHMP
Defining PrimaryVertex explicitly as messageable.
std::vector< ConfigParamSpec > Options
framework::DataProcessorSpec getHMPMatcherSpec(o2::dataformats::GlobalTrackID::mask_t src, bool useMC, float extratolerancetrd, float extratolerancetof)
create a processor spec
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
bool isTrackSourceLoaded(int src) const
void collectData(o2::framework::ProcessingContext &pc, const DataRequest &request)
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"