Specialization for SimTrackerHits that have only one cellID. More...
#include <UTIL/CellIDEncoder.h>
Public Member Functions | |
CellIDEncoder (const std::string &cellIDEncoding, EVENT::LCCollection *col) | |
Constructor, sets collection parameter LCIO::CellIDEncoding to the given encoding string. | |
void | setCellID (T *hit) |
void | setCellIDFlag () |
Helper method that sets/unsets the proper bit for storing a second cellid word. | |
![]() | |
BitField64 (const std::string &initString) | |
The c'tor takes an initialization string of the form: <fieldDesc>[,<fieldDesc>...] fieldDesc = name:[start]:[-]length where: name: The name of the field start: The start bit of the field. More... | |
lcio::long64 | getValue () const |
Returns the current 64bit value. | |
void | setValue (lcio::long64 value) |
Set a new 64bit value. | |
void | reset () |
Reset - same as setValue(0) - useful if the same encoder is used for many objects. | |
BitFieldValue & | operator[] (size_t theIndex) |
Acces to field through index. | |
const BitFieldValue & | operator[] (size_t theIndex) const |
Const acces to field through index. | |
unsigned | highestBit () const |
Highest bit used in fields [0-63]. | |
size_t | size () const |
Number of values. | |
size_t | index (const std::string &name) const |
Index for field named 'name'. | |
BitFieldValue & | operator[] (const std::string &name) |
Access to field through name . | |
const BitFieldValue & | operator[] (const std::string &name) const |
Const Access to field through name . | |
unsigned | lowWord () const |
The low word, bits 0-31. | |
unsigned | highWord () const |
The high word, bits 32-63. | |
std::string | fieldDescription () const |
Return a valid description string of all fields. | |
std::string | valueString () const |
Return a string with a comma separated list of the current sub field values. | |
Protected Attributes | |
EVENT::LCCollection * | _col |
![]() | |
std::vector< BitFieldValue * > | _fields |
lcio::long64 | _value |
IndexMap | _map |
lcio::long64 | _joined |
Additional Inherited Members | |
![]() | |
typedef std::map< std::string, unsigned int > | IndexMap |
![]() | |
void | addField (const std::string &name, unsigned offset, int width) |
Add an additional field to the list. | |
void | init (const std::string &initString) |
Decode the initialization string as described in the constructor. More... | |
BitField64 () | |
No default c'tor. | |
Specialization for SimTrackerHits that have only one cellID.
Convenient class for encoding cellIDs for various hit objects. It sets the proper collection parameter LCIO::CellIDEncoding and sets the proper flag bit for storing a second cellid if necessary. See UTIL::BitField64 for a description of the encoding string. Example:
CellIDEncoder<SimCalorimeterHitImpl> cd( "i:20,j:20,k:20" ,calVec ) ;
for(int j=0;j<NHITS;j++){
SimCalorimeterHitImpl* hit = new SimCalorimeterHitImpl ;
cd["i"] = j ;
cd["j"] = j + 100 ;
cd["k"] = j + 200 ;
cd.setCellID( hit ) ;
}