![]() |
ATLAS Offline Software
|
This class implements the CaloDetDescr/ICaloCoordinateTool and handles the translation between : More...
#include <TBCaloCoordinate.h>
Public Member Functions | |
TBCaloCoordinate (const std::string &type, const std::string &name, const IInterface *parent) | |
~TBCaloCoordinate () | |
StatusCode | initialize () |
StatusCode | finalize () |
void | ctb_to_local (Amg::Vector3D &pt_ctb, Amg::Vector3D &pt_local) |
General use method: basic translation between the 2 cartesian coordinate systems: More... | |
void | local_to_ctb (Amg::Vector3D &pt_local, Amg::Vector3D &pt_ctb) |
General use method: basic translation between the 2 cartesian coordinate systems: More... | |
void | ctb_to_local (double &x_ctb, double &y_ctb, double &z_ctb, double &x_local, double &y_local, double &z_local) |
General use method: basic translation between the 2 cartesian coordinate systems: More... | |
void | local_to_ctb (double &x_local, double &y_local, double &z_local, double &x_ctb, double &y_ctb, double &z_ctb) |
General use method: basic translation between the 2 cartesian coordinate systems: More... | |
double | beam_local_eta () |
the most common use-case : the H8 beam goes along the x axis -> that are the local calorimeters eta and phi seen by the beam ? More... | |
double | beam_local_phi () |
the most common use-case : the H8 beam goes along the x axis -> that are the local calorimeters eta and phi seen by the beam ? More... | |
virtual void | read_table_position () |
clients who want the real position must call this More... | |
virtual void | read_fake_table_position () |
clients who want to avoid the DB-decoding, and force a fixed eta must call this : More... | |
Amg::Transform3D * | transform_calo_to_ctb () |
method accessing the transformations More... | |
Amg::Transform3D * | transform_ctb_to_calo () |
method accessing the transformations More... | |
void | print_transform (Amg::Transform3D &htrans) |
printout method More... | |
ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More... | |
const ServiceHandle< StoreGateSvc > & | evtStore () const |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More... | |
const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More... | |
virtual StatusCode | sysInitialize () override |
Perform system initialization for an algorithm. More... | |
virtual StatusCode | sysStart () override |
Handle START transition. More... | |
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
Return this algorithm's input handles. More... | |
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
Return this algorithm's output handles. More... | |
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
Declare a new Gaudi property. More... | |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
Declare a new Gaudi property. More... | |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
Declare a new Gaudi property. More... | |
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
Declare a new Gaudi property. More... | |
void | updateVHKA (Gaudi::Details::PropertyBase &) |
MsgStream & | msg () const |
MsgStream & | msg (const MSG::Level lvl) const |
bool | msgLvl (const MSG::Level lvl) const |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
Protected Member Functions | |
void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
remove all handles from I/O resolution More... | |
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
Add StoreName to extra input/output deps as needed. More... | |
Private Types | |
typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
TBCaloCoordinate (const TBCaloCoordinate &) | |
TBCaloCoordinate & | operator= (const TBCaloCoordinate &) |
bool | read_data_position () |
bool | read_MC_position () |
void | read_user_position () |
void | read_neutral_position () |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
specialization for handling Gaudi::Property<SG::VarHandleKey> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
specialization for handling Gaudi::Property<SG::VarHandleBase> More... | |
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More... | |
This class implements the CaloDetDescr/ICaloCoordinateTool and handles the translation between :
the H8 CTB official coordinate system, defined in :
"Atlas Barrel Combined Run in 2004, TestBeam Layout" ATC-TT-IN-0001, Beniamino Di Girolamo
All variables in this coordinate system contain the letters _ctb
the LAr+Tile local coordinate system, which differs for 2 reasons :
the origin is shifted by x = 2298 mm, and the two calos sit on a rotating table to allow eta scans.
In the local coordinate system, calorimeters have a pointing geometry.
All variables in this coordinate system contain the letters _local.
Most clients are only interested in the methods TBCaloCoordinate::ctb_to_local and TBCaloCoordinate::local_to_ctb, which convert a given point from one coordinate system into another. The read_table_position() in called internally, is is transparent to the user.
But Atlantis clients need access to the HepTransforms used internally. Some public methods are thus provided. Note that, for these methods, the user has to call read_table_position() before hand.
Definition at line 67 of file TBCaloCoordinate.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
TBCaloCoordinate::TBCaloCoordinate | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent | ||
) |
Definition at line 47 of file TBCaloCoordinate.cxx.
TBCaloCoordinate::~TBCaloCoordinate | ( | ) |
Definition at line 130 of file TBCaloCoordinate.cxx.
|
private |
|
virtual |
the most common use-case : the H8 beam goes along the x axis -> that are the local calorimeters eta and phi seen by the beam ?
Implements ICaloCoordinateTool.
Definition at line 201 of file TBCaloCoordinate.cxx.
|
virtual |
the most common use-case : the H8 beam goes along the x axis -> that are the local calorimeters eta and phi seen by the beam ?
Implements ICaloCoordinateTool.
Definition at line 208 of file TBCaloCoordinate.cxx.
|
virtual |
General use method: basic translation between the 2 cartesian coordinate systems:
Implements ICaloCoordinateTool.
|
virtual |
General use method: basic translation between the 2 cartesian coordinate systems:
Implements ICaloCoordinateTool.
Definition at line 163 of file TBCaloCoordinate.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
|
inlineprivateinherited |
specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>
Definition at line 199 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 259 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
|
inlineinherited |
Declare a new Gaudi property.
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore
Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 95 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc
(event store) Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 85 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc
(event store) Returns (kind of) a pointer to the StoreGateSvc
.
Definition at line 90 of file AthCommonDataStore.h.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
StatusCode TBCaloCoordinate::finalize | ( | ) |
Definition at line 140 of file TBCaloCoordinate.cxx.
StatusCode TBCaloCoordinate::initialize | ( | ) |
Definition at line 104 of file TBCaloCoordinate.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
static |
Definition at line 44 of file TBCaloCoordinate.cxx.
|
virtual |
General use method: basic translation between the 2 cartesian coordinate systems:
Implements ICaloCoordinateTool.
|
virtual |
General use method: basic translation between the 2 cartesian coordinate systems:
Implements ICaloCoordinateTool.
Definition at line 182 of file TBCaloCoordinate.cxx.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 27 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
private |
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
virtual |
printout method
Implements ICaloCoordinateTool.
Definition at line 262 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 284 of file TBCaloCoordinate.cxx.
|
virtual |
clients who want to avoid the DB-decoding, and force a fixed eta must call this :
Implements ICaloCoordinateTool.
Definition at line 238 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 386 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 507 of file TBCaloCoordinate.cxx.
|
virtual |
clients who want the real position must call this
Implements ICaloCoordinateTool.
Definition at line 217 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 436 of file TBCaloCoordinate.cxx.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
virtual |
method accessing the transformations
Implements ICaloCoordinateTool.
Definition at line 250 of file TBCaloCoordinate.cxx.
|
virtual |
method accessing the transformations
Implements ICaloCoordinateTool.
Definition at line 256 of file TBCaloCoordinate.cxx.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
private |
Definition at line 144 of file TBCaloCoordinate.h.
|
private |
Definition at line 146 of file TBCaloCoordinate.h.
|
private |
Definition at line 145 of file TBCaloCoordinate.h.
|
private |
Definition at line 147 of file TBCaloCoordinate.h.
|
private |
Definition at line 148 of file TBCaloCoordinate.h.
|
private |
Definition at line 149 of file TBCaloCoordinate.h.
|
private |
Definition at line 160 of file TBCaloCoordinate.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
private |
Definition at line 184 of file TBCaloCoordinate.h.
|
private |
Definition at line 187 of file TBCaloCoordinate.h.
|
private |
Definition at line 161 of file TBCaloCoordinate.h.
|
private |
Definition at line 186 of file TBCaloCoordinate.h.
|
private |
Definition at line 188 of file TBCaloCoordinate.h.
|
private |
Definition at line 173 of file TBCaloCoordinate.h.
|
private |
Definition at line 172 of file TBCaloCoordinate.h.
|
private |
Definition at line 171 of file TBCaloCoordinate.h.
|
private |
Definition at line 181 of file TBCaloCoordinate.h.
|
private |
Definition at line 132 of file TBCaloCoordinate.h.
|
private |
Definition at line 133 of file TBCaloCoordinate.h.
|
private |
Definition at line 156 of file TBCaloCoordinate.h.
|
private |
Definition at line 157 of file TBCaloCoordinate.h.
|
private |
Definition at line 154 of file TBCaloCoordinate.h.
|
private |
Definition at line 140 of file TBCaloCoordinate.h.
|
private |
Definition at line 135 of file TBCaloCoordinate.h.
|
private |
Definition at line 136 of file TBCaloCoordinate.h.
|
private |
Definition at line 165 of file TBCaloCoordinate.h.
|
private |
Definition at line 167 of file TBCaloCoordinate.h.
|
private |
Definition at line 152 of file TBCaloCoordinate.h.
|
private |
Definition at line 153 of file TBCaloCoordinate.h.
|
private |
Definition at line 177 of file TBCaloCoordinate.h.
|
private |
Definition at line 178 of file TBCaloCoordinate.h.
|
private |
Definition at line 174 of file TBCaloCoordinate.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.