#include <RigidBodyAlignmentParameters4D.h>
Public Member Functions | |
RigidBodyAlignmentParameters4D * | clone (const AlgebraicVector ¶meters, const AlgebraicSymMatrix &covMatrix) const |
Clone all parameters (for update of parameters) | |
RigidBodyAlignmentParameters4D * | cloneFromSelected (const AlgebraicVector ¶meters, const AlgebraicSymMatrix &covMatrix) const |
Clone selected parameters (for update of parameters) | |
AlgebraicMatrix | derivatives (const TrajectoryStateOnSurface &tsos, const AlignableDetOrUnitPtr &) const |
Get all derivatives. | |
RigidBodyAlignmentParameters4D (Alignable *alignable, const AlgebraicVector ¶meters, const AlgebraicSymMatrix &covMatrix, const std::vector< bool > &selection) | |
Constructor for selection. | |
RigidBodyAlignmentParameters4D (Alignable *alignable, const AlgebraicVector ¶meters, const AlgebraicSymMatrix &covMatrix) | |
Constructor for full set of parameters. | |
RigidBodyAlignmentParameters4D (Alignable *alignable, bool calcMis) | |
int | type () const |
tell type (AlignmentParametersFactory::ParametersType - but no circular dependency) | |
~RigidBodyAlignmentParameters4D () | |
Destructor. |
Definition at line 22 of file RigidBodyAlignmentParameters4D.h.
RigidBodyAlignmentParameters4D::RigidBodyAlignmentParameters4D | ( | Alignable * | alignable, |
bool | calcMis | ||
) | [inline] |
Constructor with empty parameters/covariance (if calcMis = false) or with parameters (no covariance) created from current (mis-)placement of alignable (if calcMis = true).
Definition at line 29 of file RigidBodyAlignmentParameters4D.h.
Referenced by clone(), and cloneFromSelected().
: RigidBodyAlignmentParameters(alignable, calcMis){};
RigidBodyAlignmentParameters4D::RigidBodyAlignmentParameters4D | ( | Alignable * | alignable, |
const AlgebraicVector & | parameters, | ||
const AlgebraicSymMatrix & | covMatrix | ||
) | [inline] |
Constructor for full set of parameters.
Definition at line 34 of file RigidBodyAlignmentParameters4D.h.
: RigidBodyAlignmentParameters(alignable, parameters, covMatrix){};
RigidBodyAlignmentParameters4D::RigidBodyAlignmentParameters4D | ( | Alignable * | alignable, |
const AlgebraicVector & | parameters, | ||
const AlgebraicSymMatrix & | covMatrix, | ||
const std::vector< bool > & | selection | ||
) | [inline] |
Constructor for selection.
Definition at line 40 of file RigidBodyAlignmentParameters4D.h.
: RigidBodyAlignmentParameters(alignable, parameters, covMatrix, selection){};
RigidBodyAlignmentParameters4D::~RigidBodyAlignmentParameters4D | ( | ) | [inline] |
RigidBodyAlignmentParameters4D * RigidBodyAlignmentParameters4D::clone | ( | const AlgebraicVector & | parameters, |
const AlgebraicSymMatrix & | covMatrix | ||
) | const [virtual] |
Clone all parameters (for update of parameters)
Reimplemented from RigidBodyAlignmentParameters.
Definition at line 38 of file RigidBodyAlignmentParameters4D.cc.
References AlignmentParameters::alignable(), AlignmentParameters::isValid(), RigidBodyAlignmentParameters4D(), AlignmentParameters::selector(), AlignmentParameters::setUserVariables(), AlignmentParameters::setValid(), and AlignmentParameters::userVariables().
Referenced by cloneFromSelected().
{ RigidBodyAlignmentParameters4D* rbap = new RigidBodyAlignmentParameters4D( alignable(), parameters, covMatrix, selector()); if (userVariables()) rbap->setUserVariables(userVariables()->clone()); rbap->setValid(isValid()); return rbap; }
RigidBodyAlignmentParameters4D * RigidBodyAlignmentParameters4D::cloneFromSelected | ( | const AlgebraicVector & | parameters, |
const AlgebraicSymMatrix & | covMatrix | ||
) | const [virtual] |
Clone selected parameters (for update of parameters)
Reimplemented from RigidBodyAlignmentParameters.
Definition at line 52 of file RigidBodyAlignmentParameters4D.cc.
References AlignmentParameters::alignable(), clone(), AlignmentParameters::expandSymMatrix(), AlignmentParameters::expandVector(), AlignmentParameters::isValid(), RigidBodyAlignmentParameters4D(), AlignmentParameters::selector(), AlignmentParameters::setUserVariables(), AlignmentParameters::setValid(), and AlignmentParameters::userVariables().
{ RigidBodyAlignmentParameters4D* rbap = new RigidBodyAlignmentParameters4D(alignable(), expandVector( parameters, selector()), expandSymMatrix(covMatrix, selector()), selector()); if ( userVariables() ) rbap->setUserVariables(userVariables()->clone()); rbap->setValid(isValid()); return rbap; }
AlgebraicMatrix RigidBodyAlignmentParameters4D::derivatives | ( | const TrajectoryStateOnSurface & | tsos, |
const AlignableDetOrUnitPtr & | alidet | ||
) | const [virtual] |
Get all derivatives.
Reimplemented from RigidBodyAlignmentParameters.
Definition at line 22 of file RigidBodyAlignmentParameters4D.cc.
References AlignmentParameters::alignable(), and FrameToFrameDerivative::frameToFrameDerivative().
{ const Alignable *ali = this->alignable(); // Alignable of these parameters if (ali == alidet) { // same alignable => same frame return SegmentAlignmentDerivatives4D()(tsos); } else { // different alignable => transform into correct frame const AlgebraicMatrix deriv = SegmentAlignmentDerivatives4D()(tsos); FrameToFrameDerivative ftfd; return ftfd.frameToFrameDerivative(alidet, ali) * deriv; } }
int RigidBodyAlignmentParameters4D::type | ( | ) | const [virtual] |
tell type (AlignmentParametersFactory::ParametersType - but no circular dependency)
Reimplemented from RigidBodyAlignmentParameters.
Definition at line 68 of file RigidBodyAlignmentParameters4D.cc.
References AlignmentParametersFactory::kRigidBody4D.
{ return AlignmentParametersFactory::kRigidBody4D; }