15#define _USE_MATH_DEFINES
44static constexpr int QAMODE = 7;
49 mOutputMode = outputMode;
50 mQAConfig = std::make_unique<GPUO2InterfaceConfiguration>();
54 mQAConfig->configGRP.grpContinuousMaxTimeBin = grp->isDetContinuousReadOut(o2::detectors::DetID::TPC) ? -1 : 0;
56 throw std::runtime_error(
"Failed to initialize run parameters from GRP");
58 auto global = mQAConfig->ReadConfigurableParam();
59 if (grp->isDetReadOut(o2::detectors::DetID::TPC) && global.tpcTriggeredMode ^ !grp->isDetContinuousReadOut(o2::detectors::DetID::TPC)) {
60 throw std::runtime_error(
"TPC triggered mode (GPU_global.tpcTriggeredMode) not set correctly");
62 mQAConfig->configQA.shipToQCAsCanvas = mOutputMode ==
outputLayout;
63 mQA = std::make_unique<GPUO2InterfaceQA>(mQAConfig.get());
64 if (!postprocessOnly) {
65 mQA->initializeForProcessing(QAMODE);
78 mQA->runQA(
tracks, tracksMC, clNative);
80 mQA->postprocess(*out);
84int Tracking::postprocess(std::vector<TH1F>& in1, std::vector<TH2F>& in2, std::vector<TH1D>& in3, std::vector<TGraphAsymmErrors>& in4, TObjArray& out)
86 return mQA->postprocessExternal(in1, in2, in3, in4, out, QAMODE);
89void Tracking::getHists(
const std::vector<TH1F>*& h1,
const std::vector<TH2F>*& h2,
const std::vector<TH1D>*& h3,
const std::vector<TGraphAsymmErrors>*& h4)
const
91 mQA->getHists(h1, h2, h3, h4);
Header of the General Run Parameters object.
std::vector< o2::its::TrackITS > tracks
Definition of the Names Generator class.
ClassImp(o2::tpc::qc::Tracking)
static float getNominalGPUBz(T &src)
static GRPObject * loadFrom(const std::string &grpFileName="")
void getHists(const std::vector< TH1F > *&h1, const std::vector< TH2F > *&h2, const std::vector< TH1D > *&h3, const std::vector< TGraphAsymmErrors > *&h4) const
get histograms
void processTracks(const std::vector< o2::tpc::TrackTPC > *tracks, const std::vector< o2::MCCompLabel > *tracksMC, const o2::tpc::ClusterNativeAccess *clNative, TObjArray *out=nullptr)
void initialize(outputModes outputMode, bool postprocessOnly=false)
int postprocess(std::vector< TH1F > &in1, std::vector< TH2F > &in2, std::vector< TH1D > &in3, std::vector< TGraphAsymmErrors > &in4, TObjArray &out)
Tracking()
default constructor
void resetHistograms()
Reset all histograms.