ATLAS Offline Software
HLTExtraData.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #pragma once
6 #if !defined(TRIGSTEERINGEVENT_HLTEXTRADATA_H) && !defined(XAOD_STANDALONE)
7 #define TRIGSTEERINGEVENT_HLTEXTRADATA_H
8 
18 #include <string>
19 #include <vector>
20 
21 namespace HLT {
22 
36  class HLTExtraData {
37  public:
38  friend void swap(HLTExtraData&, HLTExtraData&);
42  HLTExtraData();
43 
47  HLTExtraData(const std::vector<uint32_t>& storage);
48 
49  HLTExtraData(const HLTExtraData&);
52 
56  void serialize(std::vector<uint32_t>& storage);
57 
61  void deserialize(const std::vector<uint32_t>& storage);
62 
63 
64  std::string appName;
66  std::vector<uint32_t> anonymous;
67 
68  private:
69 
71  inline bool empty() {
72  return (appName.empty() && statusCode==0 && anonymous.empty());
73  }
74 
76  };
77 
79 
80 } // namespace HLT
81 
82 #endif
HLT::HLTExtraData::m_stringSerializer
TrigSteeringEvent::StringSerializer m_stringSerializer
Definition: HLTExtraData.h:75
HLT::HLTExtraData::HLTExtraData
HLTExtraData()
Construct empty object.
Definition: HLTExtraData.cxx:17
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
HLT::swap
void swap(HLTExtraData &, HLTExtraData &)
Definition: HLTExtraData.cxx:76
HLT::HLTExtraData::serialize
void serialize(std::vector< uint32_t > &storage)
Serialize the data and append it to the vector.
Definition: HLTExtraData.cxx:47
HLT::HLTExtraData::empty
bool empty()
Return true if all members have default values (no serialization needed)
Definition: HLTExtraData.h:71
HLT::HLTExtraData::operator=
HLTExtraData & operator=(HLTExtraData)
unified assignement op
Definition: HLTExtraData.cxx:41
HLT
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
Definition: HLTResultReader.h:26
HLT::HLTExtraData::statusCode
uint32_t statusCode
various status codes (for prescale/COOL updates)
Definition: HLTExtraData.h:65
HLT::HLTExtraData::anonymous
std::vector< uint32_t > anonymous
For future use-cases (only use as last resort)
Definition: HLTExtraData.h:66
HLT::HLTExtraData::swap
friend void swap(HLTExtraData &, HLTExtraData &)
HLT::HLTExtraData::appName
std::string appName
application name
Definition: HLTExtraData.h:64
TrigSteeringEvent::StringSerializer
Utility class (not a tool or so) to serialize strings into stream of 32bit integers.
Definition: TrigEvent/TrigSteeringEvent/TrigSteeringEvent/StringSerializer.h:22
HLT::HLTExtraData::deserialize
void deserialize(const std::vector< uint32_t > &storage)
Deserialize storage into members.
Definition: HLTExtraData.cxx:62
StringSerializer.h
HLT::HLTExtraData
Class representing the HLT extra payload stored in HLT::HLTResult::getExtras()
Definition: HLTExtraData.h:36