FairRoot/PandaRoot
|
#include <PndLmdAlignManager.h>
Public Member Functions | |
PndLmdAlignManager () | |
virtual | ~PndLmdAlignManager () |
void | init () |
bool | addPairAndStartAligner (PndLmdHitPair &pair) |
bool | addFile (std::string filename) |
void | readFilesAndAlign () |
void | waitForCompletion () |
bool | writePairsToBinaryFiles () |
bool | readPairsFromBinaryFiles () |
bool | checkForBinaryFiles () |
bool | checkForLmdMatrixFiles () |
void | clearPairs () |
int | addFilesFromDirectory (std::string directory, int maxFiles=0) |
void | validate () |
void | alignAllSensors () |
void | setMaxPairs (int maxPairs) |
void | setSingleAligner (bool singleAligner) |
void | setOutFilename (const std::string &filename) |
void | setMatrixOutDir (std::string matrixOutDir) |
void | setInCentimeters (bool inCentimeters) |
void | setZasTimestamp (bool timestamp) |
void | workerThread (boost::shared_ptr< boost::asio::io_service > io_service) |
void | setBinaryPairFileDirectory (const std::string &binaryPairFileDirectory) |
void | setStartAlignerWhenFull (bool value) |
void | verboseLevel (int verbose) |
Static Public Member Functions | |
static void | loadBar (int current, int total, int resolution, int width, std::string message="") |
static Matrix | castTGeoHMatrixToMatrix (const TGeoHMatrix &matrix) |
static Matrix | readMatrix (std::string filename) |
static bool | writeMatrix (Matrix &mat, std::string filename) |
static std::stringstream * | readFile (std::string filename) |
static std::vector < std::vector< double > > | readFromCSVFile (std::string filename) |
static int | searchFiles (std::string curr_directory, std::vector< std::string > &list, std::string extension="", bool includeSubDirs=true) |
static void | clearScreen () |
static int | searchDirectories (std::string curr_directory, std::vector< std::string > &list, bool includeSubDirs=true) |
static bool | mkdir (std::string path) |
static bool | exists (std::string file) |
static std::vector< std::string > | findRegex (std::string source, std::string regex) |
static bool | writeConfigFile (boost::property_tree::ptree configTree, std::string filename, bool replaceExisting=true) |
static boost::property_tree::ptree | readConfigFile (std::string filename) |
Private Types | |
typedef std::map< int, PndLmdSensorAligner > ::iterator | mapIt |
Private Member Functions | |
void | alignST () |
void | alignMT () |
void | alignOne (PndLmdSensorAligner &aligner) |
void | resetMTLB (int n, int r, int w) |
void | incrementMTLB () |
void | checkIOpaths () |
void | verbosePrint (std::string input, int level=3) |
Static Private Member Functions | |
static void | readPairsFromChainMT (std::vector< std::string > files, std::map< int, PndLmdSensorAligner > &aligners, PndLmdAlignManager &manager) |
static std::string | makeBinaryPairFileName (int overlapId=0, bool incentimeters=true) |
static std::string | makeMatrixFileName (int overlapId=0, bool incentimeters=true) |
Private Attributes | |
int | _i |
int | _r |
int | _w |
int | _n |
int | _verboseLevel |
std::stringstream | _info |
std::map< int, PndLmdSensorAligner > | aligners |
std::map< int, bool > | alignersFull |
bool | _allFilesAdded |
bool | allAlignersDone |
std::vector< std::string > | fileNames |
bool | _singleAligner |
bool | _inCentimeters |
bool | _enableHelperMatrix |
bool | _zIsTimestamp |
bool | startAlignerWhenFull |
std::string | outFilename |
std::string | _matrixOutDir |
std::string | _binaryPairFileDirectory |
bool | _firstInitDone |
bool | _multithreaded |
vector< int > | overlapIDs |
Friends | |
class | PndLmdSensorAligner |
class | PndLmdAlignQA |
Definition at line 34 of file PndLmdAlignManager.h.
|
private |
Definition at line 36 of file PndLmdAlignManager.h.
PndLmdAlignManager::PndLmdAlignManager | ( | ) |
Definition at line 96 of file PndLmdAlignManager.cxx.
References init().
|
virtual |
Definition at line 141 of file PndLmdAlignManager.cxx.
bool PndLmdAlignManager::addFile | ( | std::string | filename | ) |
Definition at line 214 of file PndLmdAlignManager.cxx.
References _allFilesAdded, and fileNames.
int PndLmdAlignManager::addFilesFromDirectory | ( | std::string | directory, |
int | maxFiles = 0 |
||
) |
Definition at line 225 of file PndLmdAlignManager.cxx.
References _allFilesAdded, fileNames, i, and searchFiles().
Referenced by runLumiPixel2fMatrixFinder().
bool PndLmdAlignManager::addPairAndStartAligner | ( | PndLmdHitPair & | pair | ) |
Definition at line 166 of file PndLmdAlignManager.cxx.
References aligners, alignersFull, alignerThreadGroup, alignOne(), allAlignersDone, PndLmdHitPair::check(), PndLmdHitPair::getOverlapId(), PndLmdHitPair::isSane(), and mrfdata_8b_error::success.
Referenced by readFilesAndAlign().
void PndLmdAlignManager::alignAllSensors | ( | ) |
Definition at line 477 of file PndLmdAlignManager.cxx.
References _enableHelperMatrix, _inCentimeters, _info, _matrixOutDir, _multithreaded, alignMT(), alignST(), and checkIOpaths().
Referenced by runLumiPixel2fMatrixFinder().
|
private |
Definition at line 405 of file PndLmdAlignManager.cxx.
References _inCentimeters, _info, _matrixOutDir, _verboseLevel, aligners, alignOne(), i, makeMatrixFileName(), resetMTLB(), WorkerThread(), and writeMatrix().
Referenced by alignAllSensors().
|
private |
Definition at line 354 of file PndLmdAlignManager.cxx.
References _binaryPairFileDirectory, PndLmdSensorAligner::calculateMatrix(), checkForBinaryFiles(), PndLmdSensorAligner::clearPairs(), incrementMTLB(), and PndLmdSensorAligner::writePairsToBinary().
Referenced by addPairAndStartAligner(), alignMT(), and waitForCompletion().
|
private |
Definition at line 376 of file PndLmdAlignManager.cxx.
References _inCentimeters, _info, _matrixOutDir, aligners, loadBar(), makeMatrixFileName(), verbosePrint(), and writeMatrix().
Referenced by alignAllSensors().
|
static |
Definition at line 833 of file PndLmdAlignManager.cxx.
bool PndLmdAlignManager::checkForBinaryFiles | ( | ) |
Definition at line 903 of file PndLmdAlignManager.cxx.
References _binaryPairFileDirectory, _inCentimeters, files, i, makeBinaryPairFileName(), overlapIDs, and searchFiles().
Referenced by alignOne(), PndLmdAlignQA::histogramPairDistances(), and runLumiPixel2fMatrixFinder().
bool PndLmdAlignManager::checkForLmdMatrixFiles | ( | ) |
Definition at line 937 of file PndLmdAlignManager.cxx.
References _binaryPairFileDirectory, files, i, makeMatrixFileName(), overlapIDs, and searchFiles().
Referenced by runLumiPixel2fMatrixFinder().
|
private |
Definition at line 605 of file PndLmdAlignManager.cxx.
References _matrixOutDir, exit(), fileNames, and outFilename.
Referenced by alignAllSensors(), and setOutFilename().
void PndLmdAlignManager::clearPairs | ( | ) |
Definition at line 1578 of file PndLmdAlignManager.cxx.
References aligners.
|
static |
Definition at line 1396 of file PndLmdAlignManager.cxx.
|
static |
Definition at line 761 of file PndLmdAlignManager.cxx.
Referenced by PndLmdPairFinderTask::Init().
|
static |
Definition at line 770 of file PndLmdAlignManager.cxx.
Referenced by PndLmdAlignQA::readMatrixInfo().
|
private |
Definition at line 56 of file PndLmdAlignManager.cxx.
References _i, _n, _r, _w, c, incrementMutex, printf(), and x.
Referenced by alignOne().
void PndLmdAlignManager::init | ( | ) |
Definition at line 100 of file PndLmdAlignManager.cxx.
References _allFilesAdded, _enableHelperMatrix, _firstInitDone, _inCentimeters, _info, _multithreaded, _singleAligner, _verboseLevel, _zIsTimestamp, aligners, alignersFull, fileNames, PndLmdGeometryHelper::getAvailableOverlapIDs(), i, outFilename, overlapIDs, PndLmdSensorAligner::setInCentimeters(), PndLmdSensorAligner::setOverlapId(), and PndLmdSensorAligner::setZasTimetamp().
Referenced by PndLmdAlignQA::histogramPairDistances(), and PndLmdAlignManager().
|
static |
Definition at line 568 of file PndLmdAlignManager.cxx.
References c, i, n, printf(), and x.
Referenced by alignST(), readFilesAndAlign(), readPairsFromBinaryFiles(), and writePairsToBinaryFiles().
|
staticprivate |
Definition at line 977 of file PndLmdAlignManager.cxx.
References filename.
Referenced by checkForBinaryFiles(), PndLmdSensorAligner::readPairsFromBinary(), and PndLmdSensorAligner::writePairsToBinary().
|
staticprivate |
Definition at line 996 of file PndLmdAlignManager.cxx.
Referenced by alignMT(), alignST(), checkForLmdMatrixFiles(), PndLmdAlignQA::checkForMatrixFiles(), PndLmdAlignQA::plotCMvsPXmatrices(), PndLmdAlignQA::plotMatrixresiduals(), PndLmdAlignQA::plotPXvsCMmatricesResiduals(), and waitForCompletion().
|
static |
Definition at line 753 of file PndLmdAlignManager.cxx.
Referenced by PndLmdAlignQA::createHist(), PndLmdSensorAligner::writePairsToBinary(), and writePairsToBinaryFiles().
|
static |
Definition at line 1540 of file PndLmdAlignManager.cxx.
References is.
Referenced by PndLmdPairFinderTask::Init().
|
static |
Definition at line 634 of file PndLmdAlignManager.cxx.
References filename.
Referenced by readFromCSVFile(), and PndLmdAlignQA::readMatrixInfo().
void PndLmdAlignManager::readFilesAndAlign | ( | ) |
Definition at line 299 of file PndLmdAlignManager.cxx.
References _allFilesAdded, addPairAndStartAligner(), allAlignersDone, exit(), fileNames, i, and loadBar().
Referenced by runLumiPixel2fMatrixFinder().
|
static |
Definition at line 708 of file PndLmdAlignManager.cxx.
References i, and readFile().
Referenced by readMatrix().
|
static |
Definition at line 657 of file PndLmdAlignManager.cxx.
References exit(), i, readFromCSVFile(), and Matrix::val.
Referenced by PndLmdAlignQA::plotCMvsPXmatrices(), PndLmdAlignQA::plotMatrixresiduals(), and PndLmdAlignQA::plotPXvsCMmatricesResiduals().
bool PndLmdAlignManager::readPairsFromBinaryFiles | ( | ) |
Definition at line 1506 of file PndLmdAlignManager.cxx.
References _binaryPairFileDirectory, aligners, loadBar(), and mrfdata_8b_error::success.
Referenced by PndLmdAlignQA::histogramPairDistances(), and runLumiPixel2fMatrixFinder().
|
staticprivate |
|
private |
|
static |
Definition at line 797 of file PndLmdAlignManager.cxx.
|
static |
Definition at line 731 of file PndLmdAlignManager.cxx.
Referenced by addFilesFromDirectory(), checkForBinaryFiles(), checkForLmdMatrixFiles(), and PndLmdAlignQA::checkForMatrixFiles().
|
inline |
Definition at line 202 of file PndLmdAlignManager.h.
References _binaryPairFileDirectory.
Referenced by PndLmdAlignQA::histogramPairDistances(), and runLumiPixel2fMatrixFinder().
void PndLmdAlignManager::setInCentimeters | ( | bool | inCentimeters | ) |
Definition at line 819 of file PndLmdAlignManager.cxx.
References _inCentimeters, and aligners.
Referenced by PndLmdAlignQA::checkCombinedMatrices(), PndLmdAlignQA::checkCyclicMatrices(), PndLmdAlignQA::histogramPairDistances(), PndLmdAlignQA::plotMatrixresiduals(), and runLumiPixel2fMatrixFinder().
|
inline |
Definition at line 178 of file PndLmdAlignManager.h.
References _matrixOutDir.
Referenced by PndLmdAlignQA::checkCombinedMatrices(), PndLmdAlignQA::checkCyclicMatrices(), and runLumiPixel2fMatrixFinder().
void PndLmdAlignManager::setMaxPairs | ( | int | maxPairs | ) |
Definition at line 1381 of file PndLmdAlignManager.cxx.
References aligners.
Referenced by runLumiPixel2fMatrixFinder().
|
inline |
Definition at line 152 of file PndLmdAlignManager.h.
References checkIOpaths(), filename, and outFilename.
|
inline |
|
inline |
Definition at line 206 of file PndLmdAlignManager.h.
References startAlignerWhenFull.
void PndLmdAlignManager::setZasTimestamp | ( | bool | timestamp | ) |
Definition at line 826 of file PndLmdAlignManager.cxx.
References _zIsTimestamp, and aligners.
void PndLmdAlignManager::validate | ( | ) |
Definition at line 206 of file PndLmdAlignManager.cxx.
References aligners.
|
inline |
Definition at line 210 of file PndLmdAlignManager.h.
References _verboseLevel, a, aligners, and verbose.
Referenced by runLumiPixel2fMatrixFinder().
|
private |
Definition at line 1534 of file PndLmdAlignManager.cxx.
References _verboseLevel.
Referenced by alignST().
void PndLmdAlignManager::waitForCompletion | ( | ) |
Definition at line 1400 of file PndLmdAlignManager.cxx.
References _inCentimeters, _info, _matrixOutDir, aligners, alignersFull, alignerThreadGroup, alignOne(), makeMatrixFileName(), and writeMatrix().
Referenced by runLumiPixel2fMatrixFinder().
void PndLmdAlignManager::workerThread | ( | boost::shared_ptr< boost::asio::io_service > | io_service | ) |
|
static |
Definition at line 1558 of file PndLmdAlignManager.cxx.
Referenced by PndLmdPairFinderTask::FinishTask().
|
static |
Definition at line 685 of file PndLmdAlignManager.cxx.
Referenced by alignMT(), alignST(), and waitForCompletion().
bool PndLmdAlignManager::writePairsToBinaryFiles | ( | ) |
Definition at line 1481 of file PndLmdAlignManager.cxx.
References _binaryPairFileDirectory, aligners, loadBar(), and mkdir().
|
friend |
Definition at line 42 of file PndLmdAlignManager.h.
|
friend |
Definition at line 41 of file PndLmdAlignManager.h.
|
private |
Definition at line 54 of file PndLmdAlignManager.h.
Referenced by addFile(), addFilesFromDirectory(), init(), and readFilesAndAlign().
|
private |
Definition at line 57 of file PndLmdAlignManager.h.
Referenced by alignOne(), checkForBinaryFiles(), checkForLmdMatrixFiles(), readPairsFromBinaryFiles(), setBinaryPairFileDirectory(), and writePairsToBinaryFiles().
|
private |
Definition at line 56 of file PndLmdAlignManager.h.
Referenced by alignAllSensors(), and init().
|
private |
Definition at line 58 of file PndLmdAlignManager.h.
Referenced by init().
|
private |
Definition at line 45 of file PndLmdAlignManager.h.
Referenced by incrementMTLB(), and resetMTLB().
|
private |
Definition at line 56 of file PndLmdAlignManager.h.
Referenced by alignAllSensors(), alignMT(), alignST(), checkForBinaryFiles(), init(), setInCentimeters(), and waitForCompletion().
|
private |
Definition at line 49 of file PndLmdAlignManager.h.
Referenced by alignAllSensors(), alignMT(), alignST(), init(), and waitForCompletion().
|
private |
Definition at line 57 of file PndLmdAlignManager.h.
Referenced by alignAllSensors(), alignMT(), alignST(), checkIOpaths(), setMatrixOutDir(), and waitForCompletion().
|
private |
Definition at line 59 of file PndLmdAlignManager.h.
Referenced by alignAllSensors(), and init().
|
private |
Definition at line 45 of file PndLmdAlignManager.h.
Referenced by incrementMTLB(), and resetMTLB().
|
private |
Definition at line 45 of file PndLmdAlignManager.h.
Referenced by incrementMTLB(), and resetMTLB().
|
private |
Definition at line 56 of file PndLmdAlignManager.h.
Referenced by init(), and setSingleAligner().
|
private |
Definition at line 47 of file PndLmdAlignManager.h.
Referenced by alignMT(), init(), verboseLevel(), and verbosePrint().
|
private |
Definition at line 45 of file PndLmdAlignManager.h.
Referenced by incrementMTLB(), and resetMTLB().
|
private |
Definition at line 56 of file PndLmdAlignManager.h.
Referenced by init(), and setZasTimestamp().
|
private |
Definition at line 51 of file PndLmdAlignManager.h.
Referenced by addPairAndStartAligner(), alignMT(), alignST(), clearPairs(), PndLmdAlignQA::histogramPairDistances(), init(), readPairsFromBinaryFiles(), setInCentimeters(), setMaxPairs(), setZasTimestamp(), validate(), verboseLevel(), waitForCompletion(), and writePairsToBinaryFiles().
|
private |
Definition at line 52 of file PndLmdAlignManager.h.
Referenced by addPairAndStartAligner(), init(), and waitForCompletion().
|
private |
Definition at line 54 of file PndLmdAlignManager.h.
Referenced by addPairAndStartAligner(), and readFilesAndAlign().
|
private |
Definition at line 55 of file PndLmdAlignManager.h.
Referenced by addFile(), addFilesFromDirectory(), checkIOpaths(), init(), and readFilesAndAlign().
|
private |
Definition at line 57 of file PndLmdAlignManager.h.
Referenced by checkIOpaths(), init(), and setOutFilename().
|
private |
Definition at line 61 of file PndLmdAlignManager.h.
Referenced by checkForBinaryFiles(), checkForLmdMatrixFiles(), and init().
|
private |
Definition at line 56 of file PndLmdAlignManager.h.
Referenced by setStartAlignerWhenFull().