Project
Loading...
Searching...
No Matches
GlobalFwdMatchingAssessmentSpec.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#ifndef GLOFWD_ASSESSMENT_DEVICE_H
13#define GLOFWD_ASSESSMENT_DEVICE_H
14
16
18#include "Framework/Task.h"
21#include "TStopwatch.h"
22
23using namespace o2::framework;
24
25namespace o2
26{
27namespace globaltracking
28{
30{
31 public:
32 GlobalFwdAssessmentSpec(bool useMC, bool processGen, std::shared_ptr<o2::base::GRPGeomRequest> gr, bool midFilterDisabled, bool finalizeAnalysis = false)
33 : mUseMC(useMC),
34 mMIDFilterDisabled(midFilterDisabled),
35 mProcessGen(processGen),
36 mGGCCDBRequest(gr),
37 mFinalizeAnalysis(finalizeAnalysis){};
38 void init(o2::framework::InitContext& ic) final;
41 void finaliseCCDB(o2::framework::ConcreteDataMatcher& matcher, void* obj);
42
43 private:
44 void sendOutput(DataAllocator& output);
45 std::unique_ptr<o2::globaltracking::GloFwdAssessment> mGloFwdAssessment;
46 std::shared_ptr<o2::base::GRPGeomRequest> mGGCCDBRequest;
47 bool mUseMC = true;
48 bool mProcessGen = false;
49 bool mFinalizeAnalysis = false;
50 bool mMIDFilterDisabled = false;
51 enum TimerIDs { SWTot,
52 SWQCAsync,
53 SWTrackables,
54 SWGenerated,
55 SWRecoAndTrue,
56 SWAnalysis,
57 NStopWatches };
58 static constexpr std::string_view TimerName[] = {"Total",
59 "ProcessAsync",
60 "ProcessTrackables",
61 "ProcessGenerated",
62 "ProcessRecoAndTrue",
63 "Analysis"};
64 TStopwatch mTimer[NStopWatches];
65};
66
67DataProcessorSpec getGlobaFwdAssessmentSpec(bool useMC, bool processGen, bool midFilterDisabled, bool finalizeAnalysis = false);
68
69} // namespace globaltracking
70} // namespace o2
71
72#endif
Helper for geometry and GRP related CCDB requests.
void output(const std::map< std::string, ChannelStat > &channels)
Definition rawdump.cxx:197
Class to perform assessment of GlobalForward Tracking.
void init(o2::framework::InitContext &ic) final
void finaliseCCDB(o2::framework::ConcreteDataMatcher &matcher, void *obj)
void run(o2::framework::ProcessingContext &pc) final
void endOfStream(o2::framework::EndOfStreamContext &ec) final
This is invoked whenever we have an EndOfStream event.
GlobalFwdAssessmentSpec(bool useMC, bool processGen, std::shared_ptr< o2::base::GRPGeomRequest > gr, bool midFilterDisabled, bool finalizeAnalysis=false)
Defining PrimaryVertex explicitly as messageable.
Definition TFIDInfo.h:20
DataProcessorSpec getGlobaFwdAssessmentSpec(bool useMC, bool processGen, bool midFilterDisabled, bool finalizeAnalysis=false)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...