Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
alignmentTransformationContainer.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file alignmentTransformationContainer.h
1 #ifndef TRACKBASE_ALIGNMENTTRANSFORMATIONCONTAINER_H
2 #define TRACKBASE_ALIGNMENTTRANSFORMATIONCONTAINER_H
3 
11 #include "ActsGeometry.h"
12 #include "TrkrDefs.h"
13 
14 #include <phool/PHObject.h>
15 
16 #include <Eigen/Dense>
17 #include <Eigen/Geometry>
18 
19 #include <iostream> // for cout, ostream
20 #include <map>
21 #include <utility> // for pair
22 
23 
24 
31 {
32 
33  public:
34 
36 
38 
39  void Reset();
40  void identify(std::ostream &os = std::cout);
44  const std::vector<std::vector<Acts::Transform3>>& getMap() const;
45  void setMisalignmentFactor(uint8_t layer, double factor);
46  const double& getMisalignmentFactor(uint8_t layer) const { return m_misalignmentFactor.find(layer)->second; }
47  static bool use_alignment;
48 
49  private:
50 
52 
53  std::map<unsigned int, unsigned int> base_layer_map = { {10, 0}, {12,3}, {14,7}, {16,55} };
54 
55  std::vector< std::vector<Acts::Transform3>> transformVec;
56 
58  std::map<uint8_t, double> m_misalignmentFactor;
59 
61 
62 };
63 
64 #endif //TRACKBASE_ALIGNMENTTRANSFORMATIONCONTAINER_H