Project
Loading...
Searching...
No Matches
PixelReader.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 ALICEO2_ITSMFT_PIXELREADER_H
16#define ALICEO2_ITSMFT_PIXELREADER_H
17
18#include <Rtypes.h>
23#include <vector>
24
25namespace o2
26{
27
28namespace itsmft
29{
34{
35 public:
37
38 PixelReader() = default;
39 virtual ~PixelReader() = default;
40 PixelReader(const PixelReader& cluster) = delete;
41
43 virtual void init() = 0;
44 virtual bool getNextChipData(ChipPixelData& chipData) = 0;
45 virtual ChipPixelData* getNextChipData(std::vector<ChipPixelData>& chipDataVec) = 0;
46
47 // prepare data of next trigger, return number of non-empty links or chips
48 virtual int decodeNextTrigger() = 0;
50 {
51 return nullptr;
52 }
57 uint32_t getTrigger() const
58 {
59 return mTrigger;
60 }
61
62 bool getDecodeNextAuto() const { return mDecodeNextAuto; }
64
65 //
66 protected:
67 //
68 o2::InteractionRecord mInteractionRecord = {}; // interation record for the trigger
69 uint32_t mTrigger = 0;
70 bool mDecodeNextAuto = true; // try to fetch/decode next trigger when getNextChipData does not see any decoded data
71
73};
74
75} // namespace itsmft
76} // namespace o2
77
78#endif /* ALICEO2_ITS_PIXELREADER_H */
A const (ready only) version of MCTruthContainer.
Transient data classes for single pixel and set of pixels from current chip.
PixelReader class for the ITSMFT.
Definition PixelReader.h:34
virtual int decodeNextTrigger()=0
bool getDecodeNextAuto() const
Definition PixelReader.h:62
uint32_t getTrigger() const
Definition PixelReader.h:57
void setDecodeNextAuto(bool v)
Definition PixelReader.h:63
PixelReader & operator=(const PixelReader &src)=delete
const o2::InteractionRecord & getInteractionRecord() const
Definition PixelReader.h:53
ClassDef(PixelReader, 1)
virtual ~PixelReader()=default
virtual void init()=0
o2::InteractionRecord mInteractionRecord
Definition PixelReader.h:68
virtual ChipPixelData * getNextChipData(std::vector< ChipPixelData > &chipDataVec)=0
virtual const o2::dataformats::ConstMCTruthContainerView< o2::MCCompLabel > * getDigitsMCTruth() const
Definition PixelReader.h:49
virtual bool getNextChipData(ChipPixelData &chipData)=0
PixelReader(const PixelReader &cluster)=delete
PixelReader()=default
Transient data for single fired pixel.
GLenum src
Definition glcorearb.h:1767
const GLdouble * v
Definition glcorearb.h:832
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...