ATLAS Offline Software
Loading...
Searching...
No Matches
MMTrigPacket.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4#include <vector>
5#include <exception>
6#include <sstream>
7#include <string>
8#include <algorithm>
9#include <tuple>
10
13
14Muon::nsw::MMTrigPacket::MMTrigPacket (std::vector<uint32_t>& payload){
15
16 std::size_t readPointer{0};
17 std::span<const std::uint32_t> data{payload.data(), 3};
18
19 if (payload.size()!=2) {
20 throw std::runtime_error( Muon::nsw::format( "MM Trigger packet size not as expected: expected exactly 2 uint32_t, got {}", payload.size() ));
21 }
22
30
31}
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
MMTrigPacket(std::vector< uint32_t > &payload)
constexpr int size_trig_globalX
constexpr int size_trig_reserved
constexpr int size_trig_phiBin
constexpr int size_trig_BCID
constexpr int size_trig_globalU
constexpr int size_trig_dTheta
std::string format(const std::string &str, const T &arg)
constexpr Target decode_and_advance(const std::span< const Source > words, std::size_t &start, const std::size_t size)
Decode bits from data of words and advance the read pointer.