Project
Loading...
Searching...
No Matches
EntropyEncoderSpec.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
14
15#ifndef O2_ITSMFT_ENTROPYENCODER_SPEC
16#define O2_ITSMFT_ENTROPYENCODER_SPEC
17
19#include "Framework/Task.h"
20#include "Headers/DataHeader.h"
21#include <TStopwatch.h>
24
25namespace o2
26{
27namespace itsmft
28{
29
30template <int N>
32{
33
34 public:
35 EntropyEncoderSpec(bool doStag, bool selIR, const std::string& ctfdictOpt = "none");
36 ~EntropyEncoderSpec() override = default;
38 void init(o2::framework::InitContext& ic) final;
41 void finaliseCCDB(o2::framework::ConcreteDataMatcher& matcher, void* obj) final;
42
43 static std::string getBinding(const std::string& name, int spec);
46
47 private:
49 LookUp mPattIdConverter;
50 bool mSelIR = false;
51 bool mDoStaggering = false;
52 TStopwatch mTimer;
53};
54
56framework::DataProcessorSpec getITSEntropyEncoderSpec(bool doStag = false, bool selIR = false, const std::string& ctfdictOpt = "none");
57framework::DataProcessorSpec getMFTEntropyEncoderSpec(bool doStag = false, bool selIR = false, const std::string& ctfdictOpt = "none");
58
59} // namespace itsmft
60} // namespace o2
61
62#endif
class for entropy encoding/decoding of ITS/MFT compressed clusters data
Definition of the LookUp class.
Static class with identifiers, bitmasks and names for ALICE detectors.
Definition DetID.h:58
static constexpr ID ITS
Definition DetID.h:63
static constexpr ID MFT
Definition DetID.h:71
void init(o2::framework::InitContext &ic) final
~EntropyEncoderSpec() override=default
void finaliseCCDB(o2::framework::ConcreteDataMatcher &matcher, void *obj) final
void endOfStream(o2::framework::EndOfStreamContext &ec) final
This is invoked whenever we have an EndOfStream event.
void updateTimeDependentParams(o2::framework::ProcessingContext &pc)
static std::string getBinding(const std::string &name, int spec)
void run(o2::framework::ProcessingContext &pc) final
static constexpr o2::detectors::DetID ID
static constexpr o2::header::DataOrigin Origin
GLuint const GLchar * name
Definition glcorearb.h:781
constexpr o2::header::DataOrigin gDataOriginMFT
Definition DataHeader.h:572
constexpr o2::header::DataOrigin gDataOriginITS
Definition DataHeader.h:570
framework::DataProcessorSpec getITSEntropyEncoderSpec(bool doStag=false, bool selIR=false, const std::string &ctfdictOpt="none")
create a processor spec
framework::DataProcessorSpec getMFTEntropyEncoderSpec(bool doStag=false, bool selIR=false, const std::string &ctfdictOpt="none")
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...