|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef CALOIDENTIFIER_LARFCAL_BASE_ID_H
6 #define CALOIDENTIFIER_LARFCAL_BASE_ID_H
14 #include "boost/range/iterator_range.hpp"
40 int eta,
int phi,
bool checks )
const ;
51 int eta,
int phi,
bool checks)
const ;
68 typedef boost::iterator_range<id_iterator>
id_range;
125 std::vector<IdentifierHash>& neighbourList)
const;
239 #endif // not CALOIDENTIFIER_LARFCAL_BASE_ID_H
int eta_max(const Identifier regId) const
max value of eta index (-999 == failure)
IdDictFieldImplementation m_fcal_impl
virtual int initialize_base_from_dictionary(const IdDictMgr &dict_mgr, const std::string &group_name)
initialization from the identifier dictionary
std::vector< std::set< IdentifierHash > > m_neighbours_3d_next_vec
LArFCAL_Base_ID & operator=(const LArFCAL_Base_ID &)
LArFCAL_Base_ID(const std::string &name, bool supercell)
id_iterator mod_begin(void) const
begin iterator over set of module Identifiers
int init_neighbours_2d(const std::string &filename)
int pos_neg(const Identifier id) const
pos_neg : +/- 2 (A/C side)
size_type module_hash_max(void) const
region hash table max size
int phi_max(const Identifier regId) const
max value of phi index (-999 == failure)
IdContext module_context(void) const
context for modules – method kept for backward compatibility.
id_range mod_range() const
Range over full set of FCAL modules.
int module(const Identifier id) const
module [1,3]
std::vector< size_t > vec
int get_neighbours(const IdentifierHash id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const
access to hashes for neighbours return == 0 for neighbours found option = all2D,...
Identifier channel_id(const Identifier moduleId, int eta, int phi) const
allows to build a channel id starting from a module id (e.g.
int eta_min(const Identifier regId) const
min value of eta index (-999 == failure)
IdDictFieldImplementation m_eta_impl
Identifier module_id(const Identifier id) const
allows to know in which region is a channel/cell – valid for both kinds of channels
id_iterator mod_end(void) const
end iterator over set of module Identifiers
Identifier module_id(IdentifierHash module_hash_id) const
create module id from hash id
IdDictFieldImplementation m_lar_impl
Identifier::size_type size_type
MultiRange m_full_channel_range
int eta(const Identifier id) const
eta [0,63] module 1 ; [0,31] module 2 ; [0,15] module 3
id_range fcal_range() const
Range over full set of FCAL Identifiers.
Identifier::size_type size_type
void module_id_checks(int pos_neg, int module) const
int phi(const Identifier id) const
phi [0,15]
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
std::vector< Identifier >::const_iterator id_iterator
Type for iterators over identifiers.
const std::vector< Identifier > & channel_ids() const
provide acces to channel id vector, accessed via hash
void channel_id_checks(int pos_neg, int module, int eta, int phi) const
Base class to factor out code common among Calo ID helpers.
boost::iterator_range< id_iterator > id_range
Type for range over identifiers.
int init_neighbours_3d_prev(const std::string &filename)
Identifier channel_id(const ExpandedIdentifier &exp_id) const
cell identifier for a channel from ExpandedIdentifier
Identifier module_id(int pos_neg, int module) const
build a module identifier for a channel
MultiRange m_full_module_range
Identifier module_id(const ExpandedIdentifier &exp_id) const
module identifier for a channel from ExpandedIdentifier
Identifier channel_id(int pos_neg, int module, int eta, int phi, bool checks) const
Identifier module_id(int pos_neg, int module, bool checks) const
Identifier channel_id(const Identifier moduleId, int eta, int phi, bool checks) const
size_type m_fcal_region_index
std::vector< std::set< IdentifierHash > > m_neighbours_3d_prev_vec
IdentifierHash module_hash(Identifier module_id) const
create hash id from module id
IdDictFieldImplementation m_phi_impl
LArFCAL_Base_ID(const LArFCAL_Base_ID &)
int init_neighbours_from_file(const std::string &filename, std::vector< std::set< IdentifierHash > > &vec)
A MultiRange combines several Ranges.
std::vector< short int > m_vecOfPhiMin
const std::string & name() const
Return the name for this helper.
IdDictFieldImplementation m_pn_impl
id_iterator fcal_begin(void) const
begin iterator over full set of Fcal Identifiers for channels
int init_neighbours_3d_next(const std::string &filename)
IdDictFieldImplementation m_module_impl
virtual int get_expanded_id(const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
create expanded Identifier from Identifier (return == 0 for OK)
IdentifierHash channel_hash(Identifier channelId) const
Convert a connected channel (cell) Identifier to a hash code.
Identifier channel_id(int pos_neg, int module, int eta, int phi) const
build a cell identifier for a channel
std::vector< std::set< IdentifierHash > > m_neighbours_2d_vec
Base class to factor out code common among Calo ID helpers.
int phi_min_init(const Identifier regId) const
IdentifierHash channel_hash_binary_search(Identifier channelId) const
create hash id from channel id – method NOT optimised, please use channel_hash() above
id_iterator fcal_end(void) const
end iterator over full set of Fcal Identifiers for channels
unsigned long long size_type
boost::iterator_range< id_iterator > id_range
Type for range over identifiers.
IdDictFieldImplementation is used to capture the specification of a single field of an Identifier.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
std::vector< Identifier >::const_iterator id_iterator
Type for iterators over identifiers.
bool is_supercell(const Identifier id) const
Test if the identifier represents a supercell.
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
int phi_min(const Identifier regId) const
min value of phi index (-999 == failure)
IdDictFieldImplementation m_pn_mod_impl
int init_neighbours(const IdDictMgr &dict_mgr)
IdDictFieldImplementation m_slar_impl
int initLevelsFromDict(const std::string &group_name)
Identifier channel_id(IdentifierHash hashId) const
Return the channel (cell) Identifier for a given hash code (no checking).