ATLAS Offline Software
EventFormat_v1.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id: EventFormat_v1.h 641134 2015-01-22 19:35:12Z ssnyder $
8 #ifndef XAODEVENTFORMAT_VERSIONS_EVENTFORMAT_V1_H
9 #define XAODEVENTFORMAT_VERSIONS_EVENTFORMAT_V1_H
10 
11 // System include(s):
12 extern "C" {
13 # include <stdint.h>
14 }
15 
16 // STL include(s):
17 #include <vector>
18 #include <string>
19 #include <map>
20 #include <iosfwd>
21 
22 // Local include(s):
24 
25 namespace xAOD {
26 
39 
41  typedef std::map< std::string, EventFormatElement > KeyedData_t;
43  typedef std::map< uint32_t, EventFormatElement > HashedData_t;
44 
45  public:
48 
50  void add( const EventFormatElement& element,
51  bool updatePersistent = true );
52 
54  bool exists( const std::string& key ) const;
56  bool exists( uint32_t hash ) const;
57 
59  const EventFormatElement* get( const std::string& key, bool quiet = false ) const;
61  const EventFormatElement* get( uint32_t hash, bool quiet = false ) const;
62 
64  void clear();
65 
67  typedef KeyedData_t::const_iterator const_iterator;
69  const_iterator begin() const;
71  const_iterator end() const;
72 
74  void toTransient();
75 
77  void dump() const;
78 
79  private:
84 
86  std::vector< std::string > m_branchNames;
88  std::vector< std::string > m_classNames;
90  std::vector< std::string > m_parentNames;
92  std::vector< uint32_t > m_branchHashes;
93 
94  }; // class EventFormat_v1
95 
97  std::ostream& operator<<( std::ostream& out,
98  const EventFormat_v1& format );
99 
100 } // namespace xAOD
101 
102 #endif // XAODEVENTFORMAT_VERSIONS_EVENTFORMAT_V1_H
xAOD::EventFormat_v1::end
const_iterator end() const
STL-like function for getting the end of the container.
Definition: EventFormat_v1.cxx:163
xAOD::EventFormat_v1::get
const EventFormatElement * get(const std::string &key, bool quiet=false) const
Get the description of a given branch.
Definition: EventFormat_v1.cxx:91
vtune_athena.format
format
Definition: vtune_athena.py:14
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
xAOD::EventFormat_v1::dump
void dump() const
Dump the contents of this object.
Definition: EventFormat_v1.cxx:223
quiet
bool quiet
Definition: TrigGlobEffCorrValidation.cxx:190
xAOD::EventFormat_v1::m_classNames
std::vector< std::string > m_classNames
Names of the transient objects belonging to the branch names.
Definition: EventFormat_v1.h:88
xAOD::EventFormat_v1::KeyedData_t
std::map< std::string, EventFormatElement > KeyedData_t
Type of the key->data in-memory object.
Definition: EventFormat_v1.h:41
xAOD::EventFormat_v1::clear
void clear()
Clear the object.
Definition: EventFormat_v1.cxx:144
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::EventFormatElement
Class describing one branch of the ROOT file.
Definition: EventFormatElement.h:39
xAOD::EventFormat_v1::m_hashedData
HashedData_t m_hashedData
Object associating hash keys with the descriptions.
Definition: EventFormat_v1.h:83
xAOD::EventFormat_v1::m_keyedData
KeyedData_t m_keyedData
Object associating string keys with the descriptions.
Definition: EventFormat_v1.h:81
xAOD::EventFormat_v1::m_branchHashes
std::vector< uint32_t > m_branchHashes
Hashed versions of the branch names.
Definition: EventFormat_v1.h:92
EventFormatElement.h
xAOD::EventFormat_v1::m_parentNames
std::vector< std::string > m_parentNames
Names of the auxiliary parents of the branches.
Definition: EventFormat_v1.h:90
xAOD::EventFormat_v1::begin
const_iterator begin() const
STL-like function for getting the beginning of the container.
Definition: EventFormat_v1.cxx:158
xAOD::EventFormat_v1::toTransient
void toTransient()
Interpret the persistent members of the object.
Definition: EventFormat_v1.cxx:168
xAOD::EventFormat_v1::HashedData_t
std::map< uint32_t, EventFormatElement > HashedData_t
Type of the hash->data in-memory object.
Definition: EventFormat_v1.h:43
xAOD::EventFormat_v1
Event format metadata for xAOD files.
Definition: EventFormat_v1.h:38
xAOD::EventFormat_v1::m_branchNames
std::vector< std::string > m_branchNames
Names of the branches that we are describing.
Definition: EventFormat_v1.h:86
CaloCondBlobAlgs_fillNoiseFromASCII.hash
dictionary hash
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:109
xAOD::EventFormat_v1::EventFormat_v1
EventFormat_v1()
Default constructor.
Definition: EventFormat_v1.cxx:35
xAOD::EventFormat_v1::const_iterator
KeyedData_t::const_iterator const_iterator
Iterator for looping over the elements of the object.
Definition: EventFormat_v1.h:67
xAOD::EventFormat_v1::add
void add(const EventFormatElement &element, bool updatePersistent=true)
Add the description of a new branch.
Definition: EventFormat_v1.cxx:43
xAOD::EventFormat_v1::exists
bool exists(const std::string &key) const
Check if a description exists about a given branch.
Definition: EventFormat_v1.cxx:65
xAOD::operator<<
std::ostream & operator<<(std::ostream &out, const std::pair< FIRST, SECOND > &pair)
Helper print operator.
Definition: RDataSource.cxx:53
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37