FairRoot/PandaRoot
|
#include <PndLmdGeometryHelper.h>
Public Member Functions | |
virtual | ~PndLmdGeometryHelper () |
PndLmdGeometryHelper (const PndLmdGeometryHelper &)=delete | |
void | operator= (const PndLmdGeometryHelper &)=delete |
const PndLmdHitLocationInfo & | getHitLocationInfo (const std::string &volume_path) |
const PndLmdHitLocationInfo & | getHitLocationInfo (int sensor_id) |
std::vector< int > | getAvailableOverlapIDs () |
int | getOverlapIdFromSensorIDs (int id1, int id2) |
int | getSensorOneFromOverlapID (int overlapID) |
int | getSensorTwoFromOverlapID (int overlapID) |
TVector3 | transformPndGlobalToLmdLocal (const TVector3 &vec) |
TVector3 | transformPndGlobalToSensor (const TVector3 &vec, int sensorId) |
bool | isOverlappingArea (const int id1, const int id2) |
const std::string | getPath (unsigned char...) |
const TGeoHMatrix | getMatrixPndGlobalToSensor (const int sensorId) |
const TGeoHMatrix | getMatrixSensorToPndGlobal (const int sensorId) |
const TGeoHMatrix | getMatrixPndGlobalToLmdLocal () |
const TGeoHMatrix | getMatrixLmdLocalToPndGlobal () |
std::vector< std::string > | getAllAlignPaths (bool sensors=true, bool modules=false, bool planes=false, bool halfs=false, bool detector=false) |
std::vector< PndLmdOverlapInfo > | getOverlapInfos (int iHalf=-1, int iPlane=-1, int iModule=-1) |
std::vector< std::string > | getAllAlignableVolumePaths () const |
Static Public Member Functions | |
static PndLmdGeometryHelper & | getInstance () |
Private Member Functions | |
PndLmdGeometryHelper (const std::string &geo_params_config_file_url="") | |
const PndLmdHitLocationInfo & | createMappingEntry (int sensor_id) |
const PndLmdHitLocationInfo & | createMappingEntry (const std::string &volume_path) |
PndLmdHitLocationInfo | translateVolumePathToHitLocationInfo (const std::string &volume_path) const |
Private Attributes | |
boost::property_tree::ptree | geometry_properties |
std::vector< std::pair < std::string, bool > > | navigation_paths |
std::map< std::string, PndLmdHitLocationInfo > | volume_path_to_hit_info_mapping |
std::map< int, PndLmdHitLocationInfo > | sensor_id_to_hit_info_mapping |
std::string | lmd_root_path |
TGeoManager * | fGeoManager |
std::mutex | accessMutex |
Definition at line 67 of file PndLmdGeometryHelper.h.
|
inlineprivate |
Definition at line 80 of file PndLmdGeometryHelper.h.
References exit(), and TString.
|
virtual |
Definition at line 15 of file PndLmdGeometryHelper.cxx.
|
delete |
|
private |
Definition at line 144 of file PndLmdGeometryHelper.cxx.
References PndGeoHandling::GetPath(), PndGeoHandling::Instance(), sensor_id_to_hit_info_mapping, translateVolumePathToHitLocationInfo(), and volume_path_to_hit_info_mapping.
Referenced by getHitLocationInfo().
|
private |
Definition at line 156 of file PndLmdGeometryHelper.cxx.
References PndGeoHandling::GetShortID(), PndGeoHandling::Instance(), sensor_id_to_hit_info_mapping, translateVolumePathToHitLocationInfo(), and volume_path_to_hit_info_mapping.
std::vector< std::string > PndLmdGeometryHelper::getAllAlignableVolumePaths | ( | ) | const |
Definition at line 420 of file PndLmdGeometryHelper.cxx.
References fGeoManager, i, and navigation_paths.
Referenced by getAllAlignPaths().
std::vector< std::string > PndLmdGeometryHelper::getAllAlignPaths | ( | bool | sensors = true , |
bool | modules = false , |
||
bool | planes = false , |
||
bool | halfs = false , |
||
bool | detector = false |
||
) |
Definition at line 361 of file PndLmdGeometryHelper.cxx.
References getAllAlignableVolumePaths(), navigation_paths, and s.
Referenced by createPndLmdMisalignmentMatrices().
std::vector< int > PndLmdGeometryHelper::getAvailableOverlapIDs | ( | ) |
Definition at line 188 of file PndLmdGeometryHelper.cxx.
References getOverlapInfos().
Referenced by PndLmdAlignQA::calculateOverlapingAreas(), PndLmdAlignQA::checkForMatrixFiles(), and PndLmdAlignManager::init().
const PndLmdHitLocationInfo & PndLmdGeometryHelper::getHitLocationInfo | ( | const std::string & | volume_path | ) |
Definition at line 168 of file PndLmdGeometryHelper.cxx.
References createMappingEntry(), and volume_path_to_hit_info_mapping.
Referenced by PndLmdDigiQTask::Exec(), PndLmdPairFinderTask::Exec(), getOverlapIdFromSensorIDs(), getOverlapInfos(), and PndLmdPairFinderTask::getStatistics().
const PndLmdHitLocationInfo & PndLmdGeometryHelper::getHitLocationInfo | ( | int | sensor_id | ) |
Definition at line 178 of file PndLmdGeometryHelper.cxx.
References createMappingEntry(), and sensor_id_to_hit_info_mapping.
|
inlinestatic |
Definition at line 125 of file PndLmdGeometryHelper.h.
Referenced by createPndLmdMisalignmentMatrices(), PndLmdTrkQTask::Exec(), PndLmdPairFinderTask::Init(), PndLmdAlignQA::init(), PndLmdAlignManager::init(), PndLmdTrackFinderTask::SortHitsByDet2(), PndLmdTrackFinderCATask::SortHitsByDetSimple2(), testAlignMatrices(), PndLmdSensorAligner::transformToLmdLocal(), and PndLmdSensorAligner::transformToSensorOne().
const TGeoHMatrix PndLmdGeometryHelper::getMatrixLmdLocalToPndGlobal | ( | ) |
Definition at line 353 of file PndLmdGeometryHelper.cxx.
References getMatrixPndGlobalToLmdLocal().
const TGeoHMatrix PndLmdGeometryHelper::getMatrixPndGlobalToLmdLocal | ( | ) |
Definition at line 338 of file PndLmdGeometryHelper.cxx.
References accessMutex, fGeoManager, lmd_root_path, and TString.
Referenced by getMatrixLmdLocalToPndGlobal(), transformPndGlobalToLmdLocal(), and PndLmdSensorAligner::transformToLmdLocal().
const TGeoHMatrix PndLmdGeometryHelper::getMatrixPndGlobalToSensor | ( | const int | sensorId | ) |
Definition at line 222 of file PndLmdGeometryHelper.cxx.
References accessMutex, fGeoManager, PndGeoHandling::GetPath(), PndGeoHandling::Instance(), and TString.
Referenced by getMatrixSensorToPndGlobal(), PndLmdAlignQA::getMatrixSensorToSensor(), getMatrixSensorToSensor(), transformPndGlobalToSensor(), and PndLmdSensorAligner::transformToSensorOne().
const TGeoHMatrix PndLmdGeometryHelper::getMatrixSensorToPndGlobal | ( | const int | sensorId | ) |
Definition at line 242 of file PndLmdGeometryHelper.cxx.
References getMatrixPndGlobalToSensor().
int PndLmdGeometryHelper::getOverlapIdFromSensorIDs | ( | int | id1, |
int | id2 | ||
) |
Definition at line 246 of file PndLmdGeometryHelper.cxx.
References getHitLocationInfo().
Referenced by PndLmdPairFinderTask::Exec(), getOverlapInfos(), and isOverlappingArea().
std::vector< PndLmdOverlapInfo > PndLmdGeometryHelper::getOverlapInfos | ( | int | iHalf = -1 , |
int | iPlane = -1 , |
||
int | iModule = -1 |
||
) |
Definition at line 78 of file PndLmdGeometryHelper.cxx.
References all, PndLmdHitLocationInfo::detector_half, exit(), getHitLocationInfo(), getOverlapIdFromSensorIDs(), PndGeoHandling::GetPath(), gGeoManager, PndLmdOverlapInfo::hit1, PndLmdOverlapInfo::hit2, PndLmdOverlapInfo::id1, PndLmdOverlapInfo::id2, PndGeoHandling::Instance(), isOverlappingArea(), PndLmdOverlapInfo::mat1, PndLmdOverlapInfo::mat2, PndLmdHitLocationInfo::module, PndLmdOverlapInfo::overlapID, PndLmdOverlapInfo::path1, PndLmdOverlapInfo::path2, and PndLmdHitLocationInfo::plane.
Referenced by buildCyclic(), PndLmdAlignQA::checkCombined(), compareICPmatrices(), compareShiftDataShiftGeo(), getAvailableOverlapIDs(), getSensorOneFromOverlapID(), getSensorTwoFromOverlapID(), and saveMatricesToJson().
const std::string PndLmdGeometryHelper::getPath | ( | unsigned | char... | ) |
int PndLmdGeometryHelper::getSensorOneFromOverlapID | ( | int | overlapID | ) |
Definition at line 400 of file PndLmdGeometryHelper.cxx.
References getOverlapInfos().
Referenced by PndLmdAlignQA::calculateOverlapingAreas(), and PndLmdSensorAligner::transformToSensorOne().
int PndLmdGeometryHelper::getSensorTwoFromOverlapID | ( | int | overlapID | ) |
Definition at line 410 of file PndLmdGeometryHelper.cxx.
References getOverlapInfos().
Referenced by PndLmdAlignQA::calculateOverlapingAreas().
bool PndLmdGeometryHelper::isOverlappingArea | ( | const int | id1, |
const int | id2 | ||
) |
Definition at line 357 of file PndLmdGeometryHelper.cxx.
References getOverlapIdFromSensorIDs().
Referenced by PndLmdPairFinderTask::candHitsOverlappingArea(), and getOverlapInfos().
|
delete |
TVector3 PndLmdGeometryHelper::transformPndGlobalToLmdLocal | ( | const TVector3 & | vec | ) |
Definition at line 197 of file PndLmdGeometryHelper.cxx.
References Double_t, and getMatrixPndGlobalToLmdLocal().
TVector3 PndLmdGeometryHelper::transformPndGlobalToSensor | ( | const TVector3 & | vec, |
int | sensorId | ||
) |
Definition at line 209 of file PndLmdGeometryHelper.cxx.
References Double_t, and getMatrixPndGlobalToSensor().
|
private |
Definition at line 32 of file PndLmdGeometryHelper.cxx.
References PndGeoHandling::cd(), PndLmdHitLocationInfo::detector_half, fGeoManager, geometry_properties, PndGeoHandling::Instance(), PndLmdHitLocationInfo::module, PndLmdHitLocationInfo::module_sensor_id, PndLmdHitLocationInfo::module_side, navigation_paths, PndLmdHitLocationInfo::plane, and TString.
Referenced by createMappingEntry().
|
private |
Definition at line 78 of file PndLmdGeometryHelper.h.
Referenced by getMatrixPndGlobalToLmdLocal(), and getMatrixPndGlobalToSensor().
|
private |
Definition at line 76 of file PndLmdGeometryHelper.h.
Referenced by getAllAlignableVolumePaths(), getMatrixPndGlobalToLmdLocal(), getMatrixPndGlobalToSensor(), and translateVolumePathToHitLocationInfo().
|
private |
Definition at line 68 of file PndLmdGeometryHelper.h.
Referenced by translateVolumePathToHitLocationInfo().
|
private |
Definition at line 74 of file PndLmdGeometryHelper.h.
Referenced by getMatrixPndGlobalToLmdLocal().
|
private |
Definition at line 69 of file PndLmdGeometryHelper.h.
Referenced by getAllAlignableVolumePaths(), getAllAlignPaths(), and translateVolumePathToHitLocationInfo().
|
private |
Definition at line 72 of file PndLmdGeometryHelper.h.
Referenced by createMappingEntry(), and getHitLocationInfo().
|
private |
Definition at line 71 of file PndLmdGeometryHelper.h.
Referenced by createMappingEntry(), and getHitLocationInfo().