|
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)
float phiGranularity(const Identifier regId) const
Return the phi granularity of a region, or NOT_VALID.
IdDictFieldImplementation m_phi_impl
unsigned long long size_type
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...
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.
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
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