10#include <tracking/trackFindingCDC/filters/base/Filter.dcl.h>
11#include <tracking/trackFindingCDC/numerics/WithWeight.h>
12#include <genfit/MeasuredStateOnPlane.h>
15#include <framework/logging/Logger.h>
30 template <
class AState,
class AKalmanStepper>
38 AState* currentState = pair.second;
40 B2ASSERT(
"Can not update with nothing", currentState->mSoPSet());
41 genfit::MeasuredStateOnPlane measuredStateOnPlane = currentState->getMeasuredStateOnPlane();
43 const double chi2 =
m_kalmanStepper.kalmanStep(measuredStateOnPlane, *currentState);
45 currentState->setChi2(chi2);
46 currentState->setMeasuredStateOnPlane(measuredStateOnPlane);
Filter which can be used on a pair of path (vector of states) and states, which will call the kalmanS...
TrackFindingCDC::Weight operator()(const std::pair< const std::vector< TrackFindingCDC::WithWeight< const AState * > >, AState * > &pair) override
Call the kalmanStep and update the new state and its chi2.
AKalmanStepper m_kalmanStepper
The used stepper algorithm.
Base class for filters on a generic object type.
A mixin class to attach a weight to an object.
Abstract base class for different kinds of events.