Project
Loading...
Searching...
No Matches
TrackerSpec.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
13
14#ifndef O2_ITS_TRACKERDPL
15#define O2_ITS_TRACKERDPL
16
20
22#include "Framework/Task.h"
23
25
26#include "GPUDataTypes.h"
28
29#include "TStopwatch.h"
30
31namespace o2::its
32{
33
35{
36 public:
37 TrackerDPL(std::shared_ptr<o2::base::GRPGeomRequest> gr,
38 bool isMC,
39 int trgType,
40 const TrackingMode& trMode = TrackingMode::Unset,
41 const bool overrBeamEst = false,
43 ~TrackerDPL() override = default;
44 void init(framework::InitContext& ic) final;
45 void run(framework::ProcessingContext& pc) final;
47 void finaliseCCDB(framework::ConcreteDataMatcher& matcher, void* obj) final;
48 void stop() final;
49
50 private:
51 void updateTimeDependentParams(framework::ProcessingContext& pc);
52 std::unique_ptr<o2::gpu::GPUReconstruction> mRecChain = nullptr;
53 std::unique_ptr<o2::gpu::GPUChainITS> mChainITS = nullptr;
54 std::shared_ptr<o2::base::GRPGeomRequest> mGGCCDBRequest;
55 ITSTrackingInterface mITSTrackingInterface;
56 TStopwatch mTimer;
57};
58
59using o2::its::TrackingMode;
60framework::DataProcessorSpec getTrackerSpec(bool useMC, bool useGeom, int useTrig, const std::string& trMode, const bool overrBeamEst = false, o2::gpu::GPUDataTypes::DeviceType dType = o2::gpu::GPUDataTypes::DeviceType::CPU);
61
62} // namespace o2::its
63
64#endif /* O2_ITS_TRACKERDPL */
Definition of the ClusterTopology class.
Helper for geometry and GRP related CCDB requests.
Header of the General Run Parameters object.
void stop() final
This is invoked on stop.
void init(framework::InitContext &ic) final
void finaliseCCDB(framework::ConcreteDataMatcher &matcher, void *obj) final
void endOfStream(framework::EndOfStreamContext &ec) final
This is invoked whenever we have an EndOfStream event.
~TrackerDPL() override=default
void run(framework::ProcessingContext &pc) final
framework::DataProcessorSpec getTrackerSpec(bool useMC, bool useGeom, int useTrig, const std::string &trMode, const bool overrBeamEst=false, o2::gpu::GPUDataTypes::DeviceType dType=o2::gpu::GPUDataTypes::DeviceType::CPU)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
Defining DataPointCompositeObject explicitly as copiable.