ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
HLT::TypelessHolder Class Reference

#include <TypelessHolder.h>

Inheritance diagram for HLT::TypelessHolder:
Collaboration diagram for HLT::TypelessHolder:

Public Member Functions

 TypelessHolder (class_id_type clid, const std::string &label, sub_index_type sub)
 
virtual class_id_type typeClid () const
 
virtual const std::string & label () const
 
virtual sub_index_type subTypeIndex () const
 
virtual bool serialize (std::vector< uint32_t > &data) const
 

Static Public Member Functions

static bool enquireSerialized (std::vector< uint32_t >::const_iterator &fromHere, const std::vector< uint32_t >::const_iterator &end, class_id_type &c, std::string &label, sub_index_type &subtypeIndex)
 

Protected Attributes

class_id_type m_clid
 
std::string m_label
 
sub_index_type m_sub
 

Detailed Description

Definition at line 11 of file TypelessHolder.h.

Constructor & Destructor Documentation

◆ TypelessHolder()

HLT::TypelessHolder::TypelessHolder ( class_id_type  clid,
const std::string &  label,
sub_index_type  sub 
)

Definition at line 7 of file TypelessHolder.cxx.

8  : m_clid (clid),
9  m_label (label),
10  m_sub (sub)
11 {}

Member Function Documentation

◆ enquireSerialized()

bool BaseHolder::enquireSerialized ( std::vector< uint32_t >::const_iterator &  fromHere,
const std::vector< uint32_t >::const_iterator &  end,
class_id_type c,
std::string &  label,
sub_index_type subtypeIndex 
)
staticinherited

Definition at line 12 of file BaseHolder.cxx.

15  {
16  using namespace std;
17  if ( fromHere == end ) return false;
18 
19  c = *fromHere++;
20  if ( fromHere == end ) return false;
21 
22  subtypeIndex = *fromHere++;
23  if ( fromHere == end ) return false;
24 
25  unsigned labelSize = *fromHere++;
26  if ( fromHere == end ) return false;
27  if ( fromHere+labelSize > end ) return false;
28 
29  std::vector<uint32_t>::const_iterator stringEnd = fromHere+labelSize;
30  HLT::StringSerializer::deserialize(fromHere, stringEnd, label);
31 
32  //advance iterator to end of label
33  std::advance(fromHere,labelSize);
34 
35  return true;
36 }

◆ label()

virtual const std::string& HLT::TypelessHolder::label ( ) const
inlinevirtual

Implements HLT::BaseHolder.

Definition at line 15 of file TypelessHolder.h.

15 { return m_label; }

◆ serialize()

bool BaseHolder::serialize ( std::vector< uint32_t > &  data) const
virtualinherited

Reimplemented in HLTNavDetails::IHolder.

Definition at line 38 of file BaseHolder.cxx.

38  {
39  output.push_back( typeClid() );
40  output.push_back( subTypeIndex() );
41 
42  const size_t labelSizeIndex = output.size();
43  output.push_back( 0 );
44  const size_t beforeSS = output.size();
46  output[labelSizeIndex] = output.size() - beforeSS;
47  return true;
48 }

◆ subTypeIndex()

virtual sub_index_type HLT::TypelessHolder::subTypeIndex ( ) const
inlinevirtual

Implements HLT::BaseHolder.

Definition at line 16 of file TypelessHolder.h.

16 { return m_sub; }

◆ typeClid()

virtual class_id_type HLT::TypelessHolder::typeClid ( ) const
inlinevirtual

Implements HLT::BaseHolder.

Definition at line 14 of file TypelessHolder.h.

14 { return m_clid; }

Member Data Documentation

◆ m_clid

class_id_type HLT::TypelessHolder::m_clid
protected

Definition at line 19 of file TypelessHolder.h.

◆ m_label

std::string HLT::TypelessHolder::m_label
protected

Definition at line 20 of file TypelessHolder.h.

◆ m_sub

sub_index_type HLT::TypelessHolder::m_sub
protected

Definition at line 21 of file TypelessHolder.h.


The documentation for this class was generated from the following files:
HLT::TypelessHolder::m_clid
class_id_type m_clid
Definition: TypelessHolder.h:19
HLT::BaseHolder::label
virtual const std::string & label() const =0
HLT::BaseHolder::typeClid
virtual class_id_type typeClid() const =0
HLT::TypelessHolder::label
virtual const std::string & label() const
Definition: TypelessHolder.h:15
StringSerializer::serialize
void serialize(const std::vector< std::string > &strings, std::vector< uint32_t > &storage)
Serializes vector of strings into vector of integers.
Definition: TrigDataAccess/TrigSerializeResult/src/StringSerializer.cxx:10
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
HLT::BaseHolder::subTypeIndex
virtual sub_index_type subTypeIndex() const =0
merge.output
output
Definition: merge.py:17
HLT::StringSerializer::deserialize
std::size_t deserialize(std::vector< uint32_t >::const_iterator first, std::vector< uint32_t >::const_iterator last, std::vector< std::string > &strings)
Definition: TrigEvent/TrigNavStructure/Root/StringSerializer.cxx:66
python.compressB64.c
def c
Definition: compressB64.py:93
HLT::TypelessHolder::m_sub
sub_index_type m_sub
Definition: TypelessHolder.h:21
HLT::TypelessHolder::m_label
std::string m_label
Definition: TypelessHolder.h:20