FairRoot/PandaRoot
|
#include <PndLmdSensorAligner.h>
Public Member Functions | |
PndLmdSensorAligner () | |
PndLmdSensorAligner (const PndLmdSensorAligner &other) | |
virtual | ~PndLmdSensorAligner () |
void | init () |
bool | addSimplePair (const PndLmdHitPair &pair) |
bool | writePairsToBinary (const std::string directory) |
bool | readPairsFromBinary (const std::string directory) |
void | setMaximumNumberOfHitPairs (Int_t maxPairs) |
Matrix | transformToLmdLocal () |
Matrix | transformToSensorOne () |
bool | check () |
void | clearPairs () |
void | setForceInstant (Bool_t instant) |
void | setModuleID (Int_t ID) |
int | getModuleID () |
int | getNoOfPairs () |
void | applyDynamicCut (double percent=5.0) |
void | calculateMatrix () |
int | getOverlapId () const |
void | setOverlapId (Int_t overlapId) |
const Matrix & | getResultMatrix () const |
void | setInCentimeters (bool value) |
bool | successful () |
void | setZasTimetamp (bool value) |
void | verboseLevel (int level) |
void | setManager (PndLmdAlignManager *manager) |
unsigned int | getDim () const |
void | setDim (unsigned int value) |
Private Member Functions | |
void | printPairSpread (int what=0) |
void | transformPair (Matrix &trafoMatrix, std::vector< double > &pair) |
std::vector< double > | getPairSpread (int what=0) |
bool | zeroValCheck () |
Private Attributes | |
bool | forceInstant |
bool | debug |
unsigned int | maxNoOfPairs |
unsigned int | numberOfPairs |
unsigned int | lastNoOfPairs |
unsigned int | dim |
std::string | inputFilename |
int | _moduleID |
int | overlapID |
unsigned int | nonSanePairs |
unsigned int | skippedPairs |
unsigned int | swappedPairs |
unsigned int | verbose |
std::vector< std::vector < double > > | simplePairs |
bool | inCentimeters |
bool | success |
bool | zIsTimestamp |
PndLmdAlignManager * | superManager |
Matrix | resultMatrix |
Friends | |
class | PndLmdAlignQA |
class | PndLmdAlignManager |
Definition at line 28 of file PndLmdSensorAligner.h.
PndLmdSensorAligner::PndLmdSensorAligner | ( | ) |
Definition at line 47 of file PndLmdSensorAligner.cxx.
References init().
PndLmdSensorAligner::PndLmdSensorAligner | ( | const PndLmdSensorAligner & | other | ) |
Definition at line 55 of file PndLmdSensorAligner.cxx.
References init().
|
virtual |
Definition at line 51 of file PndLmdSensorAligner.cxx.
bool PndLmdSensorAligner::addSimplePair | ( | const PndLmdHitPair & | pair | ) |
Definition at line 364 of file PndLmdSensorAligner.cxx.
References PndLmdHitPair::getCol1(), PndLmdHitPair::getCol2(), PndLmdHitPair::getDistance(), PndLmdHitPair::getHit1(), PndLmdHitPair::getHit2(), PndLmdHitPair::getRow1(), PndLmdHitPair::getRow2(), inCentimeters, maxNoOfPairs, and simplePairs.
Referenced by BOOST_AUTO_TEST_CASE().
void PndLmdSensorAligner::applyDynamicCut | ( | double | percent = 5.0 | ) |
Definition at line 114 of file PndLmdSensorAligner.cxx.
References a, b, and simplePairs.
Referenced by PndLmdAlignManager::runSensorAligner().
void PndLmdSensorAligner::calculateMatrix | ( | ) |
Definition at line 144 of file PndLmdSensorAligner.cxx.
References dim, Matrix::eye(), Icp::fit(), forceInstant, Icp::forceInstantResult(), Matrix::getData(), Icp::getInterations(), Icp::hasConverged(), lastNoOfPairs, maxNoOfPairs, numberOfPairs, overlapID, resultMatrix, Matrix::setVal(), simplePairs, skippedPairs, success, verbose, zeroValCheck(), and zIsTimestamp.
Referenced by BOOST_AUTO_TEST_CASE(), and PndLmdAlignManager::runSensorAligner().
bool PndLmdSensorAligner::check | ( | ) |
Definition at line 642 of file PndLmdSensorAligner.cxx.
References overlapID, and simplePairs.
Referenced by PndLmdAlignManager::runSensorAligner().
void PndLmdSensorAligner::clearPairs | ( | ) |
Definition at line 634 of file PndLmdSensorAligner.cxx.
References lastNoOfPairs, and simplePairs.
Referenced by PndLmdAlignManager::runSensorAligner().
|
inline |
|
inline |
|
inline |
Definition at line 100 of file PndLmdSensorAligner.h.
References lastNoOfPairs.
|
inline |
|
private |
Definition at line 664 of file PndLmdSensorAligner.cxx.
References i, max(), min(), simplePairs, xmax, and xmin.
Referenced by printPairSpread().
|
inline |
Definition at line 124 of file PndLmdSensorAligner.h.
References resultMatrix.
Referenced by BOOST_AUTO_TEST_CASE().
void PndLmdSensorAligner::init | ( | ) |
Definition at line 30 of file PndLmdSensorAligner.cxx.
References _moduleID, debug, dim, forceInstant, inCentimeters, maxNoOfPairs, nonSanePairs, numberOfPairs, overlapID, skippedPairs, success, swappedPairs, verbose, and zIsTimestamp.
Referenced by PndLmdSensorAligner().
|
private |
Definition at line 771 of file PndLmdSensorAligner.cxx.
References getPairSpread().
bool PndLmdSensorAligner::readPairsFromBinary | ( | const std::string | directory | ) |
Definition at line 486 of file PndLmdSensorAligner.cxx.
References directory, exit(), filename, inCentimeters, is, PndLmdAlignManager::makeBinaryPairFileName(), numberOfPairs, overlapID, simplePairs, and verbose.
Referenced by PndLmdAlignManager::readPairsFromBinaryFilesAndAlign().
|
inline |
Definition at line 153 of file PndLmdSensorAligner.h.
|
inline |
Definition at line 90 of file PndLmdSensorAligner.h.
|
inline |
|
inline |
Definition at line 145 of file PndLmdSensorAligner.h.
Referenced by PndLmdAlignManager::init().
|
inline |
Definition at line 75 of file PndLmdSensorAligner.h.
|
inline |
Definition at line 94 of file PndLmdSensorAligner.h.
|
inline |
|
inline |
|
inline |
|
private |
Definition at line 834 of file PndLmdSensorAligner.cxx.
References Matrix::m, Matrix::n, and Matrix::val.
Referenced by transformToLmdLocal(), and transformToSensorOne().
Matrix PndLmdSensorAligner::transformToLmdLocal | ( | ) |
Definition at line 812 of file PndLmdSensorAligner.cxx.
References PndLmdAlignManager::castTGeoHMatrixToMatrix(), Matrix::eye(), PndLmdAlignManager::geometryHelperMutex, PndLmdGeometryHelper::getInstance(), PndLmdGeometryHelper::getMatrixPndGlobalToLmdLocal(), helper, Matrix::inv(), simplePairs, superManager, and transformPair().
Matrix PndLmdSensorAligner::transformToSensorOne | ( | ) |
Definition at line 786 of file PndLmdSensorAligner.cxx.
References PndLmdAlignManager::castTGeoHMatrixToMatrix(), Matrix::eye(), PndLmdAlignManager::geometryHelperMutex, PndLmdGeometryHelper::getInstance(), PndLmdGeometryHelper::getMatrixPndGlobalToSensor(), PndLmdGeometryHelper::getSensorOneFromOverlapID(), helper, Matrix::inv(), overlapID, simplePairs, superManager, and transformPair().
Referenced by PndLmdAlignManager::runSensorAligner().
|
inline |
Definition at line 141 of file PndLmdSensorAligner.h.
bool PndLmdSensorAligner::writePairsToBinary | ( | const std::string | directory | ) |
Definition at line 416 of file PndLmdSensorAligner.cxx.
References directory, filename, i, inCentimeters, PndLmdAlignManager::makeBinaryPairFileName(), PndLmdAlignManager::mkdir(), out, overlapID, and simplePairs.
Referenced by PndLmdAlignManager::runSensorAligner().
|
private |
Definition at line 61 of file PndLmdSensorAligner.cxx.
References overlapID, simplePairs, and verbose.
Referenced by calculateMatrix().
|
friend |
Definition at line 33 of file PndLmdSensorAligner.h.
|
friend |
Definition at line 32 of file PndLmdSensorAligner.h.
|
private |
Definition at line 38 of file PndLmdSensorAligner.h.
Referenced by getModuleID(), and init().
|
private |
Definition at line 35 of file PndLmdSensorAligner.h.
Referenced by init().
|
private |
Definition at line 36 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), getDim(), and init().
|
private |
Definition at line 35 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), and init().
|
private |
Definition at line 43 of file PndLmdSensorAligner.h.
Referenced by addSimplePair(), init(), readPairsFromBinary(), and writePairsToBinary().
|
private |
Definition at line 37 of file PndLmdSensorAligner.h.
|
private |
Definition at line 36 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), clearPairs(), and getNoOfPairs().
|
private |
Definition at line 36 of file PndLmdSensorAligner.h.
Referenced by addSimplePair(), calculateMatrix(), and init().
|
private |
Definition at line 39 of file PndLmdSensorAligner.h.
Referenced by init().
|
private |
Definition at line 36 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), init(), and readPairsFromBinary().
|
private |
Definition at line 38 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), check(), getOverlapId(), init(), readPairsFromBinary(), transformToSensorOne(), writePairsToBinary(), and zeroValCheck().
|
private |
Definition at line 55 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), and getResultMatrix().
|
private |
Definition at line 41 of file PndLmdSensorAligner.h.
Referenced by addSimplePair(), applyDynamicCut(), calculateMatrix(), check(), clearPairs(), getPairSpread(), readPairsFromBinary(), transformToLmdLocal(), transformToSensorOne(), writePairsToBinary(), and zeroValCheck().
|
private |
Definition at line 39 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), and init().
|
private |
Definition at line 43 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), init(), and successful().
|
private |
Definition at line 52 of file PndLmdSensorAligner.h.
Referenced by transformToLmdLocal(), and transformToSensorOne().
|
private |
Definition at line 39 of file PndLmdSensorAligner.h.
Referenced by init().
|
private |
Definition at line 39 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), init(), readPairsFromBinary(), and zeroValCheck().
|
private |
Definition at line 43 of file PndLmdSensorAligner.h.
Referenced by calculateMatrix(), and init().