ATLAS Offline Software
DetectorDescription
IdDict
IdDict
IdDictRange.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef IDDICT_IdDictRange_H
6
#define IDDICT_IdDictRange_H
7
8
#include "
IdDict/IdDictRegionEntry.h
"
9
#include <string>
10
#include <vector>
11
12
class
IdDictMgr
;
13
class
IdDictDictionary
;
14
class
IdDictRegion
;
15
class
Range
;
16
class
IdDictField
;
17
18
class
IdDictRange
:
public
IdDictRegionEntry
{
19
public
:
20
IdDictRange
() =
default
;
21
~IdDictRange
() =
default
;
22
void
resolve_references
(
const
IdDictMgr
& idd,
23
IdDictDictionary
&
dictionary
,
24
IdDictRegion
& region);
25
void
generate_implementation
(
const
IdDictMgr
& idd,
26
IdDictDictionary
&
dictionary
,
27
IdDictRegion
& region,
28
const
std::string&
tag
=
""
);
29
Range
build_range
()
const
;
30
//data members made public
31
std::string
m_field_name
;
32
IdDictField
*
m_field
{};
33
34
enum
specification_type
{
35
unknown
,
36
by_value
,
37
by_values
,
38
by_label
,
39
by_labels
,
40
by_minmax
41
} ;
42
43
enum
continuation_mode
{
44
none
,
45
has_next
,
46
has_previous
,
47
has_both
,
48
wrap_around
49
};
50
specification_type
m_specification
{
unknown
};
51
std::string
m_tag
;
52
std::string
m_label
;
53
int
m_value
{};
54
int
m_minvalue
{};
55
int
m_maxvalue
{};
56
int
m_prev_value
{};
57
int
m_next_value
{};
58
continuation_mode
m_continuation_mode
{
none
};
59
std::vector <std::string>
m_labels
;
60
std::vector <int>
m_values
;
61
62
private
:
63
bool
m_resolved_references
{};
64
};
65
#endif
66
IdDictRange::continuation_mode
continuation_mode
Definition:
IdDictRange.h:43
IdDictRange::by_minmax
@ by_minmax
Definition:
IdDictRange.h:40
IdDictRange::~IdDictRange
~IdDictRange()=default
IdDictRange::by_label
@ by_label
Definition:
IdDictRange.h:38
IdDictRange::m_field_name
std::string m_field_name
Definition:
IdDictRange.h:31
IdDictRange::by_labels
@ by_labels
Definition:
IdDictRange.h:39
IdDictRange::specification_type
specification_type
Definition:
IdDictRange.h:34
IdDictRange::m_tag
std::string m_tag
Definition:
IdDictRange.h:51
IdDictRange::none
@ none
Definition:
IdDictRange.h:44
IdDictRange::m_specification
specification_type m_specification
Definition:
IdDictRange.h:50
IdDictRegionEntry.h
IdDictRegion
Definition:
IdDictRegion.h:20
IdDictRange::m_field
IdDictField * m_field
Definition:
IdDictRange.h:32
IdDictRange::generate_implementation
void generate_implementation(const IdDictMgr &idd, IdDictDictionary &dictionary, IdDictRegion ®ion, const std::string &tag="")
Definition:
IdDictRange.cxx:63
IdDictRange::has_previous
@ has_previous
Definition:
IdDictRange.h:46
IdDictMgr
Definition:
IdDictMgr.h:14
IdDictRange::m_maxvalue
int m_maxvalue
Definition:
IdDictRange.h:55
IdDictRange::has_both
@ has_both
Definition:
IdDictRange.h:47
IdDictRange::m_prev_value
int m_prev_value
Definition:
IdDictRange.h:56
IdDictRange::IdDictRange
IdDictRange()=default
IdDictRange::unknown
@ unknown
Definition:
IdDictRange.h:35
IdDictRange::m_value
int m_value
Definition:
IdDictRange.h:53
master.dictionary
dictionary
Definition:
master.py:47
IdDictRange::m_labels
std::vector< std::string > m_labels
Definition:
IdDictRange.h:59
IdDictRange::has_next
@ has_next
Definition:
IdDictRange.h:45
Range
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
Definition:
DetectorDescription/Identifier/Identifier/Range.h:29
IdDictRange::m_continuation_mode
continuation_mode m_continuation_mode
Definition:
IdDictRange.h:58
IdDictDictionary
Definition:
IdDictDictionary.h:30
IdDictRegionEntry
Definition:
IdDictRegionEntry.h:14
IdDictRange
Definition:
IdDictRange.h:18
IdDictRange::build_range
Range build_range() const
Definition:
IdDictRange.cxx:124
IdDictRange::m_resolved_references
bool m_resolved_references
Definition:
IdDictRange.h:63
IdDictRange::by_values
@ by_values
Definition:
IdDictRange.h:37
IdDictRange::m_label
std::string m_label
Definition:
IdDictRange.h:52
IdDictRange::by_value
@ by_value
Definition:
IdDictRange.h:36
CaloCondBlobAlgs_fillNoiseFromASCII.tag
string tag
Definition:
CaloCondBlobAlgs_fillNoiseFromASCII.py:23
IdDictField
Definition:
IdDictField.h:15
IdDictRange::wrap_around
@ wrap_around
Definition:
IdDictRange.h:48
IdDictRange::resolve_references
void resolve_references(const IdDictMgr &idd, IdDictDictionary &dictionary, IdDictRegion ®ion)
Definition:
IdDictRange.cxx:16
IdDictRange::m_minvalue
int m_minvalue
Definition:
IdDictRange.h:54
IdDictRange::m_next_value
int m_next_value
Definition:
IdDictRange.h:57
IdDictRange::m_values
std::vector< int > m_values
Definition:
IdDictRange.h:60
Generated on Sun Aug 31 2025 21:11:19 for ATLAS Offline Software by
1.8.18