 |
Belle II Software
release-05-02-19
|
12 #include <tracking/trackFindingCDC/eventdata/hits/CDCRLWireHit.h>
14 #include <tracking/trackFindingCDC/topology/EStereoKind.h>
15 #include <tracking/trackFindingCDC/topology/ISuperLayer.h>
17 #include <tracking/trackFindingCDC/numerics/ERightLeft.h>
18 #include <tracking/trackFindingCDC/numerics/ERotation.h>
20 #include <tracking/trackFindingCDC/geometry/Vector2D.h>
32 namespace TrackFindingCDC {
33 class CDCTrajectory2D;
60 const Vector2D& recoDisp2D);
94 fromRecoPos2D(
const CDCRLWireHit& rlWireHit,
const Vector2D& recoPos2D,
bool snap =
true);
144 {
return recoHit2D.getRLWireHit() < wire; }
148 {
return wire < recoHit2D.getRLWireHit(); }
152 {
return recoHit2D.getRLWireHit() < wireHit; }
156 {
return wireHit < recoHit2D.getRLWireHit(); }
void setRLInfo(const ERightLeft rlInfo)
Setter for the right left passage information.
HepGeom::Vector3D< double > Vector3D
3D Vector
double getRefDriftLengthVariance() const
Getter for the uncertainty in the drift length at the wire reference position.
void setRLWireHit(const CDCRLWireHit &rlWireHit)
Setter for the oriented wire hit assoziated with the reconstructed hit.
Vector2D orthogonal() const
Orthogonal vector to the counterclockwise direction.
std::ostream & operator<<(std::ostream &output, const IntervalOfValidity &iov)
A two dimensional vector which is equipped with functions for correct handeling of orientation relat...
friend bool operator<(const CDCRecoHit2D &recoHit2D, const CDCWire &wire)
Defines wires and the two dimensional reconstructed hits as coaligned.
Vector2D getRecoPos2D() const
Getter for the position in the reference plane.
const CDCWireHit & getWireHit() const
Getter for the wire hit associated with the oriented hit.
Class containing the result of the unpacker in raw data and the result of the digitizer in simulation...
static CDCRecoHit2D fromRecoPos2D(const CDCRLWireHit &rlWireHit, const Vector2D &recoPos2D, bool snap=true)
Constructs a two dimensional reconstructed hit from an absolute position.
ISuperLayer getISuperLayer() const
Getter for the superlayer id.
const CDCRLWireHit & getRLWireHit() const
Getter for the oriented wire hit assoziated with the reconstructed hit.
const CDCWire & getWire() const
Getter for the wire the oriented hit associated to.
double getRefDriftLength() const
Getter for the drift length at the reference position of the wire.
double getRefDriftLength() const
Getter for the drift length at the wire reference position.
const Vector2D & getRecoDisp2D() const
Getter for the displacement from the wire reference position.
bool hasWireHit(const CDCWireHit &wireHit) const
Checks if the reconstructed hit is assoziated with the give wire hit.
double getSignedRefDriftLength() const
Getter for the drift length at the reference position of the wire.
void setRecoPos2D(const Vector2D &recoPos2D)
Setter for the position in the reference plane.
static CDCRecoHit2D fromSimHit(const CDCWireHit *wireHit, const CDCSimHit &simHit)
Constructs a two dimensional reconstructed hit from a sim hit and the assoziated wirehit.
void setRefDriftLength(double driftLength, bool snapRecoPos)
Setter for the drift length at the wire reference position.
static CDCRecoHit2D average(const CDCRecoHit2D &recoHit1, const CDCRecoHit2D &recoHit2)
Constructs the average of two reconstructed hit positions and snaps it to the drift circle.
Particle trajectory as it is seen in xy projection represented as a circle.
CDCRecoHit2D reversed() const
Returns the recohit with the opposite right left information.
const Vector2D & getRefPos2D() const
Getter for the reference position of the wire.
const CDCWire & getWire() const
Getter for the wire the reconstructed hit assoziated to.
bool hasWireHit(const CDCWireHit &wirehit) const
Checks if the oriented hit is associated with the give wire hit.
CDCRLWireHit m_rlWireHit
Memory for the reference to the assiziated wire hit.
double getRefDriftLengthVariance() const
Getter for the variance of the drift length at the reference position of the wire.
ISuperLayer getISuperLayer() const
Getter for the superlayer id.
Class representing a two dimensional reconstructed hit in the central drift chamber.
bool isOnWire(const CDCWire &wire) const
Checks if the oriented hit is associated with the give wire.
ERightLeft getRLInfo() const
Getter for the right left passage information.
Abstract base class for different kinds of events.
Class representing an oriented hit wire including a hypotheses whether the causing track passes left ...
CDCRecoHit2D()=default
Default constructor for ROOT.
A three dimensional vector.
bool isAxial() const
Indicator if the underlying wire is axial.
Vector2D m_recoDisp2D
Memory for the displacement fo the assoziated wire reference position.
ERightLeft
Enumeration to represent the distinct possibilities of the right left passage.
void reverse()
Turns the orientation in place.
ERotation
Enumeration to represent the distinct possibilities of the right left passage information.
bool isAxial() const
Indicator if the underlying wire is axial.
CDCRecoHit2D getAlias() const
Getter for the alias version of the reco hit.
EStereoKind getStereoKind() const
Getter for the stereo type of the underlying wire.
const Vector2D & getRefPos2D() const
The two dimensional reference position of the underlying wire.
double getAlpha() const
Getter for the direction of flight relative to the position.
Class representing a sense wire in the central drift chamber.
void setRLInfo(ERightLeft &rlInfo)
Setter the right left passage information.
EStereoKind getStereoKind() const
Getter for the stereo type of the underlying wire.
void snapToDriftCircle(bool switchSide=false)
Scales the displacement vector in place to lie on the dirft circle.
double angleWith(const Vector2D &rhs) const
The angle between this and rhs.
bool isOnWire(const CDCWire &wire) const
Checks if the reconstructed hit is assoziated with the give wire.
bool operator<(const CDCRecoHit2D &other) const
Total ordering relation based on wire hit, left right passage information and displacement in this or...
Class representing a hit wire in the central drift chamber.
Vector2D getFlightDirection2D() const
Getter for the direction of flight.
bool operator==(const CDCRecoHit2D &other) const
Equality comparision based on the oriented wire hit and displacement.
double getSignedRefDriftLength() const
Getter for the drift length at the wire reference position signed with the right left passage hypothe...
Vector3D reconstruct3D(const CDCTrajectory2D &trajectory2D, const double z=0) const
Reconstruct the three dimensional position (especially of stereo hits) by determinating the z coordin...
const CDCWireHit & getWireHit() const
Getter for the wire hit assoziated with the reconstructed hit.
friend bool operator<(const CDCWire &wire, const CDCRecoHit2D &recoHit2D)
Defines wires and the two dimensional reconstructed hits as coaligned.
ERightLeft getRLInfo() const
Getter for the right left passage information.