ATLAS Offline Software
IdDictDictionaryRef.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 IDDICT_IdDictDictionaryRef_H
6 #define IDDICT_IdDictDictionaryRef_H
7 
9 #include <string>
10 
11 class IdDictMgr;
12 class IdDictDictionary;
13 class IdDictRegion;
14 class Range;
15 
17 public:
18  // ==================================
19  //** @name Constructor/destructor
20  // @{
21 
22  IdDictDictionaryRef (const std::string& dictionary_name);
24  virtual ~IdDictDictionaryRef ();
25 
26 
28  // ==================================
29  //** @name Simple accessors.
30  // @{
31 
32  const std::string& dictionary_name() const;
33 
34 
36  // ==================================
37  //** @name Methods used to initialize the object.
38  // @{
39 
40  virtual void resolve_references (const IdDictMgr& idd,
42  IdDictRegion& region) override;
43  virtual void generate_implementation (const IdDictMgr& idd,
45  IdDictRegion& region,
46  const std::string& tag = "") override;
47  virtual void reset_implementation () override;
48  virtual bool verify () const override;
49  virtual Range build_range () const override;
50 
51 
53 
54 
55 private:
56  std::string m_dictionary_name;
58 
59  // We allow to regenerate the implementation with a tag. However,
60  // propagation of information should only be done once.
64 };
65 
66 
67 inline
68 const std::string& IdDictDictionaryRef::dictionary_name() const
69 {
70  return m_dictionary_name;
71 }
72 
73 
74 #endif
IdDictDictionaryRef::verify
virtual bool verify() const override
Definition: IdDictDictionaryRef.cxx:140
IdDictDictionaryRef::build_range
virtual Range build_range() const override
Definition: IdDictDictionaryRef.cxx:144
IdDictDictionaryRef
Definition: IdDictDictionaryRef.h:16
IdDictDictionaryRef::~IdDictDictionaryRef
virtual ~IdDictDictionaryRef()
Definition: IdDictDictionaryRef.cxx:32
IdDictRegionEntry.h
IdDictDictionaryRef::IdDictDictionaryRef
IdDictDictionaryRef(const std::string &dictionary_name)
Definition: IdDictDictionaryRef.cxx:15
IdDictRegion
Definition: IdDictRegion.h:20
IdDictDictionaryRef::m_dictionary_name
std::string m_dictionary_name
Definition: IdDictDictionaryRef.h:56
IdDictMgr
Definition: IdDictMgr.h:14
IdDictDictionaryRef::generate_implementation
virtual void generate_implementation(const IdDictMgr &idd, IdDictDictionary &dictionary, IdDictRegion &region, const std::string &tag="") override
Definition: IdDictDictionaryRef.cxx:48
IdDictDictionaryRef::m_propagated_information
bool m_propagated_information
Definition: IdDictDictionaryRef.h:63
master.dictionary
dictionary
Definition: master.py:47
Range
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
Definition: DetectorDescription/Identifier/Identifier/Range.h:29
IdDictDictionaryRef::resolve_references
virtual void resolve_references(const IdDictMgr &idd, IdDictDictionary &dictionary, IdDictRegion &region) override
Definition: IdDictDictionaryRef.cxx:35
IdDictDictionary
Definition: IdDictDictionary.h:30
IdDictRegionEntry
Definition: IdDictRegionEntry.h:14
IdDictDictionaryRef::m_dictionary
IdDictDictionary * m_dictionary
Definition: IdDictDictionaryRef.h:57
IdDictDictionaryRef::reset_implementation
virtual void reset_implementation() override
Definition: IdDictDictionaryRef.cxx:133
IdDictDictionaryRef::m_generated_implementation
bool m_generated_implementation
Definition: IdDictDictionaryRef.h:62
CaloCondBlobAlgs_fillNoiseFromASCII.tag
string tag
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:23
IdDictDictionaryRef::m_resolved_references
bool m_resolved_references
Definition: IdDictDictionaryRef.h:61
IdDictDictionaryRef::dictionary_name
const std::string & dictionary_name() const
Definition: IdDictDictionaryRef.h:68