![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
14 #ifndef JGTOWERBASE_ID_H
15 #define JGTOWERBASE_ID_H
25 #include "boost/range/iterator_range.hpp"
47 int eta,
int phi,
bool checks )
const ;
53 int eta,
int phi,
bool checks )
const ;
101 typedef boost::iterator_range<id_iterator>
id_range;
284 const std::vector<const IdDictRegion*>&
dictRegions()
const;
367 int eta,
int phi,
bool checks )
const
371 m_calo_impl.pack (calo_field_value(),
result);
372 m_jgtower_impl.pack (pos_neg,
result);
373 m_sampling_impl.pack (sampling,
result);
374 m_region_impl.pack (region,
result);
380 tower_id_checks( pos_neg, sampling, region,
eta,
phi );
394 int eta,
int phi,
bool checks )
const
609 #endif // CALOJGTOWER_ID_H
int get_prev_in_phi(const IdentifierHash &id, IdentifierHash &prev) const
access to hashes for neighbours in phi – towers only (no extended) return == 0 for neighbours found
id_iterator tower_begin() const
begin iterator over towers
std::vector< const IdDictRegion * > m_vecOfDictRegions
List of IdDictRegion objects.
int eta(const Identifier id) const
return eta according to :
int fill_vec_of_dict_regions(const std::string &group_name="")
float phi0(const Identifier regId) const
Return the minimum phi of region, or NOT_VALID.
Scalar phi() const
phi method
std::vector< unsigned short > m_prev_eta_vec
void tower_id_checks(int pos_neg, int sampling, int region, int eta, int phi) const
Scalar eta() const
pseudorapidity method
IdentifierHash calo_region_hash(const Identifier id) const
IdentifierHash tower_hash(Identifier towerId) const
create hash id from tower id
int phi(const Identifier id) const
return phi according to :
int calo_field_value() const
virtual int get_hash(const Identifier &id, IdentifierHash &hash_id, const IdContext *context=0) const
create hash id from compact id (return == 0 for OK)
IdDictFieldImplementation m_sampling_impl
const std::vector< const IdDictRegion * > & dictRegions() const
IdContext tower_context(void) const
access to IdContext's which define which levels of fields are contained in the id
std::vector< unsigned short > m_next_eta_vec
int sampling(const Identifier id) const
return sampling according to :
int region(const Identifier id) const
return region according to :
void pack(int value, Identifier &id) const
int phi_max(const Identifier regId) const
min value of phi index (-999 == failure)
int get_prev_in_eta(const IdentifierHash &id, IdentifierHash &prev) const
access to hashes for neighbours in eta – towers only (no extended) return == 0 for neighbours found
IdDictFieldImplementation m_region_impl
std::vector< Identifier > m_region_vec
size_type tower_hash_max(void) const
tower hash table max size
IdDictFieldImplementation m_pnz_reg_impl
int unpack(Identifier id) const
Identifier manipulation methods.
std::vector< unsigned short > m_prev_phi_vec
id_iterator region_end() const
end iterator over regions
int get_next_in_eta(const IdentifierHash &id, IdentifierHash &next) const
access to hashes for neighbours in eta – towers only (no extended) return == 0 for neighbours found
MultiRange m_full_reg_range
boost::iterator_range< id_iterator > id_range
Type for range over identifiers.
size_type m_calo_region_hash_max
std::vector< HashCalc > m_hash_calcs
id_iterator tower_end() const
end iterator over towers
void reset(Identifier &id) const
size_type m_SAMPLING_INDEX
size_type m_jgtower_region_index
virtual int initialize_base_from_dictionary(const IdDictMgr &dict_mgr, const std::string &t_pre)
initialization from the identifier dictionary
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
id_iterator region_begin() const
begin iterator over regions
small class holding the starting hash value, the min eta and the number of phi bins of each region
std::vector< Identifier > m_tower_vec
size_type calo_region_hash_max(void) const
region hash table max size
Identifier::size_type size_type
std::vector< Identifier >::const_iterator id_iterator
Type for iterators over identifiers.
virtual ~JGTowerBase_ID()
std::vector< unsigned short > m_next_phi_vec
float eta0(const Identifier regId) const
Return the minimum eta of region, or NOT_VALID.
const IdDictDictionary * m_dict
void region_id_checks(int pos_neg, int sampling, int region) const
A MultiRange combines several Ranges.
Identifier region_id(int pos_neg, int sampling, int region) const
build a region (of towers) identifier
IdDictFieldImplementation m_jgtower_impl
id_range reg_range() const
range over regions
size_type m_tower_hash_max
virtual int get_id(const IdentifierHash &hash_id, Identifier &id, const IdContext *context=0) const
create compact id from hash id (return == 0 for OK)
IdContext region_context(void) const
access to IdContext's which define which levels of fields are contained in the id
size_type m_DETZSIDE_INDEX
Identifier tower_id(int pos_neg, int sampling, int region, int eta, int phi) const
build a tower identifier
int get_next_in_phi(const IdentifierHash &id, IdentifierHash &next) const
access to hashes for neighbours in phi – towers only (no extended) return == 0 for neighbours found
int pos_neg(const Identifier id) const
return pos_neg according to :
IdentifierHash tower_hash_binary_search(Identifier towerId) const
create hash id from tower id – method NOT optimised, please use tower_hash() above
int eta_max(const Identifier regId) const
max value of eta index (-999 == failure)
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
int initLevelsFromDict(const std::string &t_pre)
int eta_min(const Identifier regId) const
min value of eta index (-999 == failure)
int get_expanded_id(const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
create expanded Identifier from Identifier (return == 0 for OK)
IDENTIFIER_TYPE size_type
float phiGranularity(const Identifier regId) const
Return the phi granularity of a region, or NOT_VALID.
IdDictFieldImplementation m_phi_impl
IdDictFieldImplementation is used to capture the specification of a single field of an Identifier.
MultiRange m_full_tower_range
IdDictFieldImplementation m_calo_impl
virtual bool do_checks(void) const override
Checks are performed by default in debug compilation and NOT in optimized compilation.
float etaGranularity(const Identifier regId) const
Return the eta granularity of a region, or NOT_VALID.
macros to associate a CLID to a type
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
IdDictFieldImplementation m_eta_impl
id_range tower_range() const
range over towers