 |
Belle II Software
release-05-01-25
|
12 #include <genfit/MeasuredStateOnPlane.h>
13 #include <tracking/dataobjects/RecoTrack.h>
14 #include <tracking/trackFindingCDC/eventdata/trajectories/CDCTrajectory3D.h>
15 #include <tracking/trackFindingCDC/geometry/Vector3D.h>
16 #include <tracking/trackFindingCDC/eventdata/hits/CDCWireHit.h>
17 #include <tracking/trackFindingCDC/topology/CDCWire.h>
18 #include <tracking/trackFindingCDC/numerics/ERightLeft.h>
20 #include <boost/optional.hpp>
41 B2ASSERT(
"State does not represent a wire hit",
static_cast<bool>(
m_cdcWireHit));
48 B2ASSERT(
"State does not represent a seed",
static_cast<bool>(
m_seed));
56 return seed->getRelated<
RecoTrack>(mcRecoTrackStoreArrayName);
62 return static_cast<bool>(
m_seed);
68 B2ASSERT(
"State does not have a track state (yet)",
static_cast<bool>(
m_trackState));
87 B2ASSERT(
"LR info is not present yet",
m_rl != TrackFindingCDC::ERightLeft::c_Unknown);
158 trackMomentum, trackState.getCharge());
163 boost::optional<const RecoTrack*>
m_seed;
165 boost::optional<const TrackFindingCDC::CDCWireHit*>
m_cdcWireHit;
168 boost::optional<genfit::MeasuredStateOnPlane>
m_trackState;
std::ostream & operator<<(std::ostream &output, const IntervalOfValidity &iov)
#StateOnPlane with additional covariance matrix.
const RecoTrack * getSeed() const
Get RecoTrack seed corresponding to the state.
TrackFindingCDC::CDCTrajectory3D getTrajectory() const
Helper method to get trajectory from the trackState.
TrackFindingCDC::ERightLeft m_rl
Store if the track is on the right or left side of the hit.
void setRLinfo(const TrackFindingCDC::ERightLeft &rl)
Set right-left info for the hit.
void setWeight(double weight)
Set state weight.
boost::optional< const TrackFindingCDC::CDCWireHit * > m_cdcWireHit
(optional) pointer to the wire hit
double m_weight
state weight
double getWeight() const
Get state weight.
double m_chi2
state chi2 (using genfit extrapolation)
double getArcLength() const
Return the arc-length along the tracjectory to the hit.
void setTrackState(const genfit::MeasuredStateOnPlane &trackState)
Store genfit Measured state on plane.
boost::optional< const RecoTrack * > m_seed
(optional) pointer to the seed track
This is the Reconstruction Event-Data Model Track.
void setReconstructedZ(double reconstructedZ)
Set state Z information.
Abstract base class for different kinds of events.
TrackFindingCDC::ERightLeft getRLinfo() const
Return right-left info (check if present first)
double getChi2() const
Get state chi2.
A three dimensional vector.
void setChi2(double chi2)
Set set chi2.
void setArcLength(double arcLength)
Set the arc-length along the tracjectory to the hit.
ERightLeft
Enumeration to represent the distinct possibilities of the right left passage.
const genfit::MeasuredStateOnPlane & getTrackState() const
Get genfit track state (but first check if already present)
void setHitDistance(double hitDistance)
Set hit distance to the trajectory.
double getHitDistance() const
Return hit distance to the trajectory.
boost::optional< genfit::MeasuredStateOnPlane > m_trackState
(optional) genfit MeasuredStateOnPlane
double m_arcLength
arc length along the trajectory to the hit
double getReconstructedZ() const
Get state Z information.
const RecoTrack * getMCRecoTrack(const std::string &mcRecoTrackStoreArrayName="MCRecoTracks") const
Match seed to the MC track, return it. Works for seed-states only.
Define states for CKF algorithm, which can be seed track or CDC wire hit.
Class representing a hit wire in the central drift chamber.
double m_reconstructedZ
reconstructed Z coordinate
bool isSeed() const
Returns true if the state corresponds to the seed track.
Particle full three dimensional trajectory.
const TrackFindingCDC::CDCWireHit * getWireHit() const
Get CDCWireHit corresponding to the state.
double m_hitDistance
distance from the trajectory to the hit
CDCCKFState(const RecoTrack *seed, const genfit::MeasuredStateOnPlane &trackState)
constructor from the seed recoTrack and genfit trackState