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) |
void | local_to_ctb (Amg::Vector3D &pt_local, Amg::Vector3D &pt_ctb) |
void | ctb_to_local (double &x_ctb, double &y_ctb, double &z_ctb, double &x_local, double &y_local, double &z_local) |
void | local_to_ctb (double &x_local, double &y_local, double &z_local, double &x_ctb, double &y_ctb, double &z_ctb) |
double | beam_local_eta () |
double | beam_local_phi () |
virtual void | read_table_position () |
virtual void | read_fake_table_position () |
Amg::Transform3D * | transform_calo_to_ctb () |
Amg::Transform3D * | transform_ctb_to_calo () |
void | print_transform (Amg::Transform3D &htrans) |
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 () |
Private Attributes | |
double | m_table_axis_data |
double | m_table_axis_MC |
double | m_table_proj_data |
double | m_table_proj_MC |
double | m_table_eta |
double | m_calo_phi_shift |
double | m_calo_theta_shift |
double | m_calo_psi_shift |
double | m_calo_x_shift |
double | m_calo_y_shift |
double | m_calo_z_shift |
double | m_table_theta |
double | m_table_z |
double | m_table_delta |
double | m_table_calc_theta |
double | m_table_calc_x |
int | m_DBRead |
int | m_PoolRead |
Amg::RotationMatrix3D * | m_table_rotate |
Amg::Translation3D * | m_table_shift |
Amg::Transform3D | m_rotz_extra_calo_to_ctb |
Amg::Transform3D | m_roty_extra_calo_to_ctb |
Amg::Transform3D | m_rotx_extra_calo_to_ctb |
Amg::Transform3D | m_translxyz_extra_calo_to_ctb |
Amg::Transform3D * | m_transform_calo_to_ctb |
Amg::Transform3D * | m_transform_ctb_to_calo |
long | m_runNumber |
int | m_firstevt |
ITBCaloPosTool * | m_postool |
const TBDetDescrManager * | m_MCmgr |
CaloPhiRange * | m_range |
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.
TBCaloCoordinate::TBCaloCoordinate | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent | ||
) |
Definition at line 42 of file TBCaloCoordinate.cxx.
TBCaloCoordinate::~TBCaloCoordinate | ( | ) |
Definition at line 124 of file TBCaloCoordinate.cxx.
|
private |
double TBCaloCoordinate::beam_local_eta | ( | ) |
Definition at line 195 of file TBCaloCoordinate.cxx.
double TBCaloCoordinate::beam_local_phi | ( | ) |
Definition at line 202 of file TBCaloCoordinate.cxx.
void TBCaloCoordinate::ctb_to_local | ( | Amg::Vector3D & | pt_ctb, |
Amg::Vector3D & | pt_local | ||
) |
void TBCaloCoordinate::ctb_to_local | ( | double & | x_ctb, |
double & | y_ctb, | ||
double & | z_ctb, | ||
double & | x_local, | ||
double & | y_local, | ||
double & | z_local | ||
) |
Definition at line 157 of file TBCaloCoordinate.cxx.
StatusCode TBCaloCoordinate::finalize | ( | ) |
Definition at line 134 of file TBCaloCoordinate.cxx.
StatusCode TBCaloCoordinate::initialize | ( | ) |
Definition at line 98 of file TBCaloCoordinate.cxx.
void TBCaloCoordinate::local_to_ctb | ( | Amg::Vector3D & | pt_local, |
Amg::Vector3D & | pt_ctb | ||
) |
void TBCaloCoordinate::local_to_ctb | ( | double & | x_local, |
double & | y_local, | ||
double & | z_local, | ||
double & | x_ctb, | ||
double & | y_ctb, | ||
double & | z_ctb | ||
) |
Definition at line 176 of file TBCaloCoordinate.cxx.
|
private |
void TBCaloCoordinate::print_transform | ( | Amg::Transform3D & | htrans | ) |
Definition at line 256 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 278 of file TBCaloCoordinate.cxx.
|
virtual |
Definition at line 232 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 378 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 499 of file TBCaloCoordinate.cxx.
|
virtual |
Definition at line 211 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 428 of file TBCaloCoordinate.cxx.
Transform3D * TBCaloCoordinate::transform_calo_to_ctb | ( | ) |
Definition at line 244 of file TBCaloCoordinate.cxx.
Transform3D * TBCaloCoordinate::transform_ctb_to_calo | ( | ) |
Definition at line 250 of file TBCaloCoordinate.cxx.
|
private |
Definition at line 143 of file TBCaloCoordinate.h.
|
private |
Definition at line 145 of file TBCaloCoordinate.h.
|
private |
Definition at line 144 of file TBCaloCoordinate.h.
|
private |
Definition at line 146 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 159 of file TBCaloCoordinate.h.
|
private |
Definition at line 183 of file TBCaloCoordinate.h.
|
private |
Definition at line 186 of file TBCaloCoordinate.h.
|
private |
Definition at line 160 of file TBCaloCoordinate.h.
|
private |
Definition at line 185 of file TBCaloCoordinate.h.
|
private |
Definition at line 187 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 170 of file TBCaloCoordinate.h.
|
private |
Definition at line 180 of file TBCaloCoordinate.h.
|
private |
Definition at line 131 of file TBCaloCoordinate.h.
|
private |
Definition at line 132 of file TBCaloCoordinate.h.
|
private |
Definition at line 155 of file TBCaloCoordinate.h.
|
private |
Definition at line 156 of file TBCaloCoordinate.h.
|
private |
Definition at line 153 of file TBCaloCoordinate.h.
|
private |
Definition at line 139 of file TBCaloCoordinate.h.
|
private |
Definition at line 134 of file TBCaloCoordinate.h.
|
private |
Definition at line 135 of file TBCaloCoordinate.h.
|
private |
Definition at line 164 of file TBCaloCoordinate.h.
|
private |
Definition at line 166 of file TBCaloCoordinate.h.
|
private |
Definition at line 151 of file TBCaloCoordinate.h.
|
private |
Definition at line 152 of file TBCaloCoordinate.h.
|
private |
Definition at line 176 of file TBCaloCoordinate.h.
|
private |
Definition at line 177 of file TBCaloCoordinate.h.
|
private |
Definition at line 173 of file TBCaloCoordinate.h.