ATLAS Offline Software
Loading...
Searching...
No Matches
ByteStreamAddress.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef BYTESTREAMCNVSVCBASE_BYTESTREAMADDRESS_H
6#define BYTESTREAMCNVSVCBASE_BYTESTREAMADDRESS_H
7
8// Framework include files
9#include "GaudiKernel/GenericAddress.h"
10#include "GaudiKernel/EventContext.h"
11
12#include <cstdint>
13#include <vector>
14
27
28class ByteStreamAddress : public GenericAddress {
29public:
30 // @brief Constructor
31 ByteStreamAddress(const CLID& clid, const std::string& fname, const std::string& cname, int p1 = 0, int p2 = 0);
32 // @brief Constructor
33 ByteStreamAddress(const CLID& clid);
34
35 // @brief Destructor
36 virtual ~ByteStreamAddress() {}; //doesn't own event
37
38 // @brief Add a rob id
39 void add(uint32_t robid);
40
41 // @brief Add event id
42 void setEventContext(const EventContext& eid);
43
44 // @brief access the ROB fragment IDs
45 const std::vector<uint32_t>& getRobIDs() const;
46
47 // @brief get event id
48 const EventContext& getEventContext() const;
49
50 // @brief storage type to be used by all bytestream converters
51 static constexpr long storageType() { return 0x43; }
52
53private:
54 // @brief it holds a vector of rob ids
55 std::vector<uint32_t> m_robIDs;
56 EventContext m_eid;
57};
58
59inline void ByteStreamAddress::setEventContext(const EventContext& eid)
60{ m_eid = eid; }
61
62inline const EventContext& ByteStreamAddress::getEventContext() const
63{ return m_eid; }
64
65#endif
uint32_t CLID
The Class ID type.
void setEventContext(const EventContext &eid)
const std::vector< uint32_t > & getRobIDs() const
access the fragment pointer
ByteStreamAddress(const CLID &clid, const std::string &fname, const std::string &cname, int p1=0, int p2=0)
Standard Constructor.
void add(uint32_t robid)
Add ROBID.
const EventContext & getEventContext() const
std::vector< uint32_t > m_robIDs
static constexpr long storageType()