#include <KalmanAlignmentMetricsCalculator.h>
Public Types | |
typedef std::map< Alignable *, SingleDistancesList * > | FullDistancesList |
typedef std::map< Alignable *, short int > | SingleDistancesList |
Public Member Functions | |
const std::vector< Alignable * > | alignables (void) const |
Return all known alignables. More... | |
void | clear (void) |
Clear stored distances. More... | |
const SingleDistancesList & | getDistances (Alignable *i) const |
KalmanAlignmentMetricsCalculator (void) | |
unsigned int | nDistances (void) const |
Number of stored distances. More... | |
short int | operator() (Alignable *i, Alignable *j) const |
void | readDistances (std::string filename) |
void | setMaxDistance (short int maxDistance) |
Set maximum distance to be stored. More... | |
void | updateDistances (const std::vector< Alignable * > &alignables) |
Update list of distances with a set Alignables. More... | |
void | writeDistances (std::string filename) |
~KalmanAlignmentMetricsCalculator (void) | |
Private Member Functions | |
void | clearDistances (FullDistancesList &dist) |
void | connect (FullDistancesList &changes, SingleDistancesList *connection, Alignable *alignable, short int value) |
void | createBranches (TTree *tree) |
void | extractPropagatedDistances (FullDistancesList &changes, Alignable *alignable, SingleDistancesList *oldList, SingleDistancesList *newList) |
Extract entries from the updated lists that need to be further propagated. More... | |
void | insertDistance (FullDistancesList &dist, Alignable *i, Alignable *j, short int value) |
void | insertDistance (SingleDistancesList *distList, Alignable *j, short int value) |
void | insertPropagatedDistances (FullDistancesList &propagated) |
Insert the 'propagated distances' into the lists of the remaining alignables. More... | |
void | insertUpdatedDistances (FullDistancesList &updated) |
Insert changes due to the update of the lists of the current alignables. More... | |
void | setBranchAddresses (TTree *tree) |
void | updateList (SingleDistancesList *thisList, SingleDistancesList *otherList) |
Private Attributes | |
SingleDistancesList | theDefaultReturnList |
FullDistancesList | theDistances |
short int | theMaxDistance |
Calculates the metrical distances (stored as short int) for a set of Alignables. See E.Widl, R.Fr"uhwirth, W.Adam, A Kalman Filter for Track-based Alignment, CMS NOTE-2006/022 for more details.
Definition at line 17 of file KalmanAlignmentMetricsCalculator.h.
typedef std::map< Alignable*, SingleDistancesList* > KalmanAlignmentMetricsCalculator::FullDistancesList |
Definition at line 23 of file KalmanAlignmentMetricsCalculator.h.
typedef std::map< Alignable*, short int > KalmanAlignmentMetricsCalculator::SingleDistancesList |
Definition at line 22 of file KalmanAlignmentMetricsCalculator.h.
KalmanAlignmentMetricsCalculator::KalmanAlignmentMetricsCalculator | ( | void | ) |
Definition at line 4 of file KalmanAlignmentMetricsCalculator.cc.
KalmanAlignmentMetricsCalculator::~KalmanAlignmentMetricsCalculator | ( | void | ) |
Definition at line 7 of file KalmanAlignmentMetricsCalculator.cc.
References clear().
const std::vector< Alignable * > KalmanAlignmentMetricsCalculator::alignables | ( | void | ) | const |
Return all known alignables.
Definition at line 114 of file KalmanAlignmentMetricsCalculator.cc.
References theDistances.
Referenced by SimpleMetricsUpdator::alignables().
void KalmanAlignmentMetricsCalculator::clear | ( | void | ) |
Clear stored distances.
Definition at line 108 of file KalmanAlignmentMetricsCalculator.cc.
References clearDistances(), and theDistances.
Referenced by Vispa.Views.WidgetView.WidgetView::closeEvent(), Vispa.Views.BoxDecayView.BoxDecayView::closeEvent(), Vispa.Share.FindAlgorithm.FindAlgorithm::findUsingFindDialog(), Vispa.Views.LineDecayView.LineDecayView::setDataObjects(), Vispa.Views.WidgetView.WidgetView::setDataObjects(), BeautifulSoup.Tag::setString(), Vispa.Views.TreeView.TreeView::updateContent(), Vispa.Views.TableView.TableView::updateContent(), Vispa.Views.BoxDecayView.BoxDecayView::updateContent(), Vispa.Views.PropertyView.PropertyView::updateContent(), and ~KalmanAlignmentMetricsCalculator().
|
private |
Definition at line 126 of file KalmanAlignmentMetricsCalculator.cc.
Referenced by clear(), and updateDistances().
|
private |
If the current update of the metric has connected previously unrelated parts (in a metrical sense), add this information to the table of propagated distances.
Definition at line 223 of file KalmanAlignmentMetricsCalculator.cc.
References insertDistance().
Referenced by Vispa.Gui.ZoomableScrollArea.ZoomableScrollArea::__init__(), Vispa.Views.PropertyView.BooleanProperty::__init__(), Vispa.Gui.FindDialog.FindDialog::_addScript(), Vispa.Gui.FindDialog.FindDialog::_addStringProperty(), Vispa.Main.Application.Application::_connectSignals(), Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView::_createItem(), Vispa.Gui.BoxContentDialog.BoxContentDialog::addButton(), Vispa.Gui.ToolBoxContainer.ToolBoxContainer::addWidget(), Vispa.Views.PropertyView.PropertyView::append(), Vispa.Views.PropertyView.PropertyView::appendAddRow(), Vispa.Main.Application.Application::createAction(), Vispa.Views.PropertyView.TextEditWithButtonProperty::createButton(), Vispa.Views.LineDecayView.LineDecayView::createLineDecayContainer(), Vispa.Views.PropertyView.TextEditWithButtonProperty::createLineEdit(), Vispa.Views.LineDecayView.LineDecayContainer::createObject(), Vispa.Views.PropertyView.TextEditWithButtonProperty::createTextEdit(), extractPropagatedDistances(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController::filterDialog(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController::find(), Vispa.Gui.PortWidget.PortWidget::mouseMoveEvent(), Vispa.Views.PropertyView.BooleanProperty::setChecked(), Vispa.Main.SplitterTab.SplitterTab::setController(), Vispa.Plugins.Browser.BrowserTab.BrowserTab::setController(), Vispa.Views.PropertyView.BooleanProperty::setReadOnly(), Vispa.Views.PropertyView.DropDownProperty::setReadOnly(), Vispa.Views.PropertyView.TextEditWithButtonProperty::setReadOnly(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController::setTab(), Vispa.Views.PropertyView.IntegerProperty::setValue(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController::switchCenterView(), Vispa.Plugins.EdmBrowser.EdmBrowserTabController.EdmBrowserTabController::updateViewMenu(), and Vispa.Plugins.ConfigEditor.ConfigEditorTabController.ConfigEditorTabController::updateViewMenu().
|
private |
Definition at line 274 of file KalmanAlignmentMetricsCalculator.cc.
|
private |
Extract entries from the updated lists that need to be further propagated.
Definition at line 190 of file KalmanAlignmentMetricsCalculator.cc.
References connect(), and insertDistance().
Referenced by updateDistances().
const KalmanAlignmentMetricsCalculator::SingleDistancesList & KalmanAlignmentMetricsCalculator::getDistances | ( | Alignable * | i | ) | const |
Return map of related Alignables (identified via Alignable*) and their distances for a distinct Alignable.
Definition at line 75 of file KalmanAlignmentMetricsCalculator.cc.
References theDefaultReturnList, and theDistances.
Referenced by SimpleMetricsUpdator::additionalAlignables(), and SimpleMetricsUpdator::additionalAlignablesWithDistances().
|
private |
Definition at line 235 of file KalmanAlignmentMetricsCalculator.cc.
References i, j, and relativeConstraints::value.
Referenced by connect(), extractPropagatedDistances(), and insertPropagatedDistances().
|
private |
Definition at line 251 of file KalmanAlignmentMetricsCalculator.cc.
References j, and relativeConstraints::value.
|
private |
Insert the 'propagated distances' into the lists of the remaining alignables.
Definition at line 175 of file KalmanAlignmentMetricsCalculator.cc.
References insertDistance(), and theDistances.
Referenced by updateDistances().
|
private |
Insert changes due to the update of the lists of the current alignables.
Definition at line 161 of file KalmanAlignmentMetricsCalculator.cc.
References theDistances.
Referenced by updateDistances().
unsigned int KalmanAlignmentMetricsCalculator::nDistances | ( | void | ) | const |
Number of stored distances.
Definition at line 97 of file KalmanAlignmentMetricsCalculator.cc.
References theDistances.
Return distance between two Alignables. If there is no metrical relation between the two Alignables -1 is returned.
Definition at line 83 of file KalmanAlignmentMetricsCalculator.cc.
References theDistances.
void KalmanAlignmentMetricsCalculator::readDistances | ( | std::string | filename | ) |
Definition at line 268 of file KalmanAlignmentMetricsCalculator.cc.
|
private |
Definition at line 280 of file KalmanAlignmentMetricsCalculator.cc.
|
inline |
Set maximum distance to be stored.
Definition at line 40 of file KalmanAlignmentMetricsCalculator.h.
References theMaxDistance.
Referenced by SimpleMetricsUpdator::SimpleMetricsUpdator().
void KalmanAlignmentMetricsCalculator::updateDistances | ( | const std::vector< Alignable * > & | alignables | ) |
Update list of distances with a set Alignables.
Definition at line 10 of file KalmanAlignmentMetricsCalculator.cc.
References clearDistances(), extractPropagatedDistances(), insertPropagatedDistances(), insertUpdatedDistances(), theDistances, and updateList().
Referenced by SimpleMetricsUpdator::update().
|
private |
Update thisList with information from otherList - thisList and otherList are assumed to belong to different alignables.
Definition at line 134 of file KalmanAlignmentMetricsCalculator.cc.
References theMaxDistance.
Referenced by updateDistances().
void KalmanAlignmentMetricsCalculator::writeDistances | ( | std::string | filename | ) |
Definition at line 262 of file KalmanAlignmentMetricsCalculator.cc.
|
private |
Definition at line 83 of file KalmanAlignmentMetricsCalculator.h.
Referenced by getDistances().
|
private |
Definition at line 80 of file KalmanAlignmentMetricsCalculator.h.
Referenced by alignables(), clear(), getDistances(), insertPropagatedDistances(), insertUpdatedDistances(), nDistances(), operator()(), and updateDistances().
|
private |
Definition at line 81 of file KalmanAlignmentMetricsCalculator.h.
Referenced by setMaxDistance(), and updateList().