9#include "Identifier/Identifier.h"
95 typedef std::vector<Identifier>
id_vec;
137 static const unsigned int nmodule =
m_module_impl.field().get_maximum() + 1;
146 static const unsigned int nmodule =
m_module_impl.field().get_maximum() + 1;
147 static const unsigned int ntype =
m_type_impl.field().get_maximum() + 1;
148 static const unsigned int nchannel =
m_channel_impl.field().get_maximum() + 1;
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
int forward_field_value() const
int zdc_field_value() const
AtlasDetectorID(const std::string &name, const std::string &group)
IdDictFieldImplementation is used to capture the specification of a single field of an Identifier.
int unpack(Identifier id) const
Identifier manipulation methods.
This is a "hash" representation of an Identifier.
A MultiRange combines several Ranges.
Identifier::size_type size_type
IdDictFieldImplementation m_forward_impl
Identifier module_id(int side, int module) const
MultiRange m_full_channel_range
IdentifierHash module_hash(Identifier module_id) const
module hash from id - optimized
size_type m_FORWARD_INDEX
IdDictFieldImplementation m_zdc_impl
size_type m_channel_hash_max
int side(const Identifier &id) const
Values of different levels (failure returns 0)
const_id_iterator modules_end() const
id_vec::const_iterator id_vec_it
size_type m_module_hash_max
size_type m_zdc_region_index
std::vector< Identifier >::const_iterator const_id_iterator
const IdDictDictionary * m_dict
void test_packing() const
Tests of packing.
MultiRange::const_identifier_factory const_expanded_id_iterator
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr)
Initialization from the identifier dictionary.
std::vector< unsigned short > hash_vec
MultiRange m_full_module_range
const_id_iterator modules_begin() const
Iterators over full set of ids. modules iterator is sorted.
const_id_iterator channels_begin() const
Iterators over full set of ids. channels iterator is sorted.
int type(const Identifier &id) const
IdDictFieldImplementation m_side_impl
const_id_iterator channels_end() const
Identifier channel_id(int side, int module, int type, int channel) const
int channel(const Identifier &id) const
IdDictFieldImplementation m_type_impl
IdDictFieldImplementation m_module_impl
size_type channel_hash_max() const
size_type module_hash_max() const
IdDictFieldImplementation m_channel_impl
hash_vec::const_iterator hash_vec_it
size_type m_CHANNEL_INDEX
IdentifierHash channel_hash(Identifier channel_id) const
channel hash from id - optimized
std::vector< Identifier > id_vec