Project
Loading...
Searching...
No Matches
HmpidDecodeRawMem.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
18
19
#ifndef COMMON_HMPIDDECODERAWMEM_H_
20
#define COMMON_HMPIDDECODERAWMEM_H_
21
22
#include <cctype>
23
#include <cstdio>
24
#include <cstdlib>
25
#include <unistd.h>
26
#include <cstring>
27
#include <vector>
28
29
#include "
DataFormatsHMP/Digit.h
"
30
#include "
HMPIDBase/Geo.h
"
31
#include "
HMPIDReconstruction/HmpidDecoder.h
"
32
33
using namespace
o2
;
34
35
namespace
o2
36
{
37
namespace
hmpid
38
{
39
40
class
HmpidDecodeRawMem
:
public
HmpidDecoder
41
{
42
public
:
43
HmpidDecodeRawMem
(
int
* EqIds,
int
* CruIds,
int
* LinkIds,
int
numOfEquipments);
44
HmpidDecodeRawMem
(
int
numOfEquipments);
45
~HmpidDecodeRawMem
();
46
47
bool
setUpStream
(
void
* Buffer,
long
BufferLen)
override
;
48
49
private
:
50
bool
getBlockFromStream(uint32_t** streamPtr, uint32_t
Size
)
override
;
51
bool
getHeaderFromStream(uint32_t** streamPtr)
override
;
52
bool
getWordFromStream(uint32_t* word)
override
;
53
void
setPad(
HmpidEquipment
* eq,
int
col
,
int
dil,
int
ch, uint16_t
charge
)
override
;
54
55
private
:
56
};
57
58
class
HmpidDecodeRawDigit
:
public
HmpidDecodeRawMem
59
{
60
public
:
61
HmpidDecodeRawDigit
(
int
* EqIds,
int
* CruIds,
int
* LinkIds,
int
numOfEquipments);
62
HmpidDecodeRawDigit
(
int
numOfEquipments);
63
~HmpidDecodeRawDigit
();
64
65
std::vector<o2::hmpid::Digit>
mDigits
;
66
67
private
:
68
void
setPad(
HmpidEquipment
* eq,
int
col
,
int
dil,
int
ch, uint16_t
charge
)
override
;
69
};
70
71
}
// namespace hmpid
72
}
// namespace o2
73
#endif
/* COMMON_HMPIDDECODERAWFILE_H_ */
Digit.h
charge
int16_t charge
Definition
RawEventData.h:5
Geo.h
HmpidDecoder.h
Base Class to decode HMPID Raw Data stream.
col
uint32_t col
Definition
RawData.h:4
Measurement::Size
@ Size
o2::hmpid::HmpidDecodeRawDigit
Definition
HmpidDecodeRawMem.h:59
o2::hmpid::HmpidDecodeRawDigit::~HmpidDecodeRawDigit
~HmpidDecodeRawDigit()
Destructor.
o2::hmpid::HmpidDecodeRawDigit::mDigits
std::vector< o2::hmpid::Digit > mDigits
Definition
HmpidDecodeRawMem.h:65
o2::hmpid::HmpidDecodeRawMem
Definition
HmpidDecodeRawMem.h:41
o2::hmpid::HmpidDecodeRawMem::setUpStream
bool setUpStream(void *Buffer, long BufferLen) override
Definition
HmpidDecodeRawMem.cxx:66
o2::hmpid::HmpidDecodeRawMem::~HmpidDecodeRawMem
~HmpidDecodeRawMem()
Destructor.
o2::hmpid::HmpidDecoder
Definition
HmpidDecoder.h:55
o2::hmpid::HmpidEquipment
Definition
HmpidEquipment.h:67
o2
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
Definition
BitstreamReader.h:24
Detectors
HMPID
reconstruction
include
HMPIDReconstruction
HmpidDecodeRawMem.h
Generated on Tue Feb 25 2025 23:16:18 for Project by
1.9.8