Project
Loading...
Searching...
No Matches
DigitPayloadEncoder.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 O2_MCH_RAW_ENCODER_DIGIT_PAYLOAD_ENCODER_H
13#define O2_MCH_RAW_ENCODER_DIGIT_PAYLOAD_ENCODER_H
14
17#include <cstdint>
18#include <functional>
19#include <gsl/span>
20#include <optional>
23
31namespace o2::mch::raw
32{
33
35{
36 public:
38
39 void encodeDigits(gsl::span<o2::mch::Digit> digits,
40 uint32_t orbit,
41 uint16_t bc,
42 std::vector<std::byte>& buffer);
43
44 private:
45 Digit2ElecMapper mDigit2ElecMapper;
46 PayloadEncoder& mEncoder;
47};
48
49} // namespace o2::mch::raw
50#endif
uint64_t orbit
Definition RawEventData.h:6
uint64_t bc
Definition RawEventData.h:5
void encodeDigits(gsl::span< o2::mch::Digit > digits, uint32_t orbit, uint16_t bc, std::vector< std::byte > &buffer)
A PayloadEncoder builds MCH raw data (payload part only)
GLuint buffer
Definition glcorearb.h:655
std::function< std::optional< std::pair< DsElecId, int > >(const o2::mch::Digit &digit)> Digit2ElecMapper
std::vector< Digit > digits