ATLAS Offline Software
Loading...
Searching...
No Matches
ProjectionMatricesSet.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
6// ProjectionMatricesSet.h, (c) ATLAS Detector software
8
9#ifndef TRKEVENTPRIMITIVES_PROJECTIONMATRICESSET_H
10#define TRKEVENTPRIMITIVES_PROJECTIONMATRICESSET_H
11
12// Amg
14// Trk
16
18namespace Trk {
19
20
28
30
31 public:
33 ProjectionMatricesSet(int maxdim);
34
36 const Amg::MatrixX& expansionMatrix(int mtx) const;
37
39 const Amg::MatrixX& reductionMatrix(int mtx) const;
40
42 int accessor(int mtx, ParamDefs par) const;
43
44 private:
46 std::vector<Amg::MatrixX> m_expansions;
47 std::vector<Amg::MatrixX> m_reductions;
48 std::vector<std::vector<int>> m_accessors;
49
50 };
51
52inline const Amg::MatrixX& ProjectionMatricesSet::expansionMatrix(int mtx) const { return m_expansions[mtx]; }
53
54inline const Amg::MatrixX& ProjectionMatricesSet::reductionMatrix(int mtx) const { return m_reductions[mtx]; }
55
56inline int ProjectionMatricesSet::accessor(int mtx, ParamDefs par) const { return (par-(m_accessors[mtx])[par]); }
57
58} // end of namespace
59
60
61#endif // TRKEVENTPRIMITIVES_PROJECTIONMATRICESSET_H
int accessor(int mtx, ParamDefs par) const
Accessors for members.
std::vector< std::vector< int > > m_accessors
std::vector< Amg::MatrixX > m_expansions
std::vector< Amg::MatrixX > m_reductions
const Amg::MatrixX & expansionMatrix(int mtx) const
Expansion matrix return.
ProjectionMatricesSet(int maxdim)
Explicit constructor for 1-dimensional vector.
const Amg::MatrixX & reductionMatrix(int mtx) const
Reduction matrix return.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Ensure that the ATLAS eigen extensions are properly loaded.
ParamDefs
This file defines the parameter enums in the Trk namespace.
Definition ParamDefs.h:32