1D Hierarchy for Lorentz shift correction  
 More...
#include <Hierarchy.h>
|  | 
|  | LorentShiftHierarchy () | 
|  | Constructor. 
 | 
|  | 
| std::vector< int > | getElementLabels (DetectorLevelElement element) final | 
|  | Label for Lorentz shift parameter. 
 | 
|  | 
| template<class LowestLevelDBObject > | 
| GlobalDerivativeSet | getGlobalDerivatives (unsigned short sensor, const genfit::StateOnPlane *sop, B2Vector3D bField) | 
|  | Template function to get globals for given db object and its element (and the rest of hierarchy) 
 | 
|  | 
| TMatrixD | getLorentzShiftDerivatives (const genfit::StateOnPlane *sop, B2Vector3D bField) | 
|  | Derivatives for Lorentz shift in sensor plane. 
 | 
|  | 
| template<class ChildDBObjectType , class MotherDBObjectType > | 
| void | insertRelation (unsigned short child, unsigned short mother) | 
|  | Template function to insert hierarchy relation between two DB objects and their elements. 
 | 
|  | 
| void | buildConstraints (Constraints &constraints) | 
|  | Adds constraints from current hierarchy to a constraints vector. 
 | 
|  | 
| GlobalDerivativeSet | buildGlobalDerivativesHierarchy (TMatrixD matrixChain, DetectorLevelElement child) | 
|  | Recursive function which adds labels and derivatives until top element in hierarchy is found. 
 | 
|  | 
| template<class ChildDBObjectType , class MotherDBObjectType > | 
| void | insert (unsigned short child, unsigned short mother, TMatrixD childToMotherParamTransform) | 
|  | Template function to add relation between two elements (possibly in different objects with constants) First object is the child object, second its hierarchy parent.  More... 
 | 
|  | 
| void | printHierarchy () | 
|  | print the lookup map 
 | 
|  | 
| const std::set< unsigned short > & | getUsedDBObjUniqueIDs () | 
|  | Get the global unique ids of DB objects used to construct hierarchy Useful to update hierarchy only when those changed. 
 | 
|  | 
|  | 
| static void | mergeGlobals (GlobalDerivativeSet &main, GlobalDerivativeSet additional) | 
|  | Merge additional set into main set of global labels and derivatives TODO: move to some utilities. 
 | 
|  | 
|  | 
| std::pair< DetectorLevelElement, TMatrixD > | getChildToMotherTransform (DetectorLevelElement child) | 
|  | Find the transformation in the lookup. 
 | 
|  | 
|  | 
| std::map< DetectorLevelElement, std::pair< DetectorLevelElement, TMatrixD > > | m_lookup | 
|  | Map with all the parameter data (child -> (mother, transform_child2mother)) 
 | 
|  | 
| std::map< DetectorLevelElement, std::vector< DetectorLevelElement > > | m_hierarchy | 
|  | Map of hierarchy relations mother-> child. 
 | 
|  | 
| std::set< unsigned short > | m_usedUniqueIDs {} | 
|  | The set of unique id of each DB object used for construction For more efficient updates of hierarchy only when used objects change. 
 | 
|  | 
1D Hierarchy for Lorentz shift correction 
Definition at line 108 of file Hierarchy.h.
◆ insert()
  
  | 
        
          | void insert | ( | unsigned short | child, |  
          |  |  | unsigned short | mother, |  
          |  |  | TMatrixD | childToMotherParamTransform |  
          |  | ) |  |  |  | inlineinherited | 
 
Template function to add relation between two elements (possibly in different objects with constants) First object is the child object, second its hierarchy parent. 
- Parameters
- 
  
    | child | is the element's numeric id in child obj |  | mother | is the parent object |  | childToMotherParamTransform | is the transformation matrix (placement from geometry of the detector) |  
 
Definition at line 60 of file Hierarchy.h.
 
 
The documentation for this class was generated from the following files: