3#ifndef EDM4EIC_MutableTrajectory_H
4#define EDM4EIC_MutableTrajectory_H
12#include "podio/RelationRange.h"
16#include "podio/utilities/MaybeSharedPtr.h"
20#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
21#include "nlohmann/json_fwd.hpp"
26class TrajectoryCollection;
28class MutableTrackSeed;
94 void setType(std::uint32_t value);
98 [[deprecated(
"use getType instead")]]
99 std::uint32_t&
type();
106 [[deprecated(
"use getNStates instead")]]
114 [[deprecated(
"use getNMeasurements instead")]]
122 [[deprecated(
"use getNOutliers instead")]]
130 [[deprecated(
"use getNHoles instead")]]
138 [[deprecated(
"use getNSharedHits instead")]]
181 void unlink() { m_obj = podio::utils::MaybeSharedPtr<TrajectoryObj>{
nullptr}; }
198 swap(a.m_obj, b.m_obj);
205 podio::utils::MaybeSharedPtr<TrajectoryObj> m_obj{
nullptr};
208#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
209void to_json(nlohmann::json& j,
const MutableTrajectory& value);
Definition Measurement2D.h:46
Definition MutableTrajectory.h:39
std::uint32_t getNMeasurements() const
Access the Number of hits used.
Definition MutableTrajectory.cc:64
podio::RelationRange< edm4eic::Measurement2D > getOutliers_deprecated() const
Definition MutableTrajectory.cc:201
std::vector< float >::const_iterator outlierChi2_begin() const
Definition MutableTrajectory.cc:250
podio::RelationRange< float > getMeasurementChi2() const
Definition MutableTrajectory.cc:237
std::size_t outliers_deprecated_size() const
Definition MutableTrajectory.cc:190
podio::RelationRange< edm4eic::TrackParameters > getTrackParameters() const
Definition MutableTrajectory.cc:129
bool operator<(const MutableTrajectory &other) const
Definition MutableTrajectory.h:190
std::uint32_t getNOutliers() const
Access the Number of hits not considered.
Definition MutableTrajectory.cc:65
void setNMeasurements(std::uint32_t value)
Set the Number of hits used.
Definition MutableTrajectory.cc:83
void addToMeasurementChi2(const float &)
Definition MutableTrajectory.cc:209
std::vector< edm4eic::Measurement2D >::const_iterator outliers_deprecated_end() const
Definition MutableTrajectory.cc:184
std::uint32_t & type()
Get reference to 0 (does not have good track fit), 1 (has good track fit)
Definition MutableTrajectory.cc:79
std::size_t measurements_deprecated_size() const
Definition MutableTrajectory.cc:154
std::uint32_t & nSharedHits()
Get reference to Number of shared hits with other trajectories.
Definition MutableTrajectory.cc:94
std::uint32_t & nOutliers()
Get reference to Number of hits not considered.
Definition MutableTrajectory.cc:88
void addToOutliers_deprecated(const edm4eic::Measurement2D &)
Definition MutableTrajectory.cc:173
podio::ObjectID id() const
Definition MutableTrajectory.h:192
bool operator==(const MutableTrajectory &other) const
Definition MutableTrajectory.h:183
MutableTrajectory(const MutableTrajectory &other)=default
copy constructor
void addToMeasurements_deprecated(const edm4eic::Measurement2D &)
Definition MutableTrajectory.cc:137
std::uint32_t & nStates()
Get reference to Number of tracking steps.
Definition MutableTrajectory.cc:82
void setNSharedHits(std::uint32_t value)
Set the Number of shared hits with other trajectories.
Definition MutableTrajectory.cc:92
void addToTrackParameters(const edm4eic::TrackParameters &)
Definition MutableTrajectory.cc:101
void setNStates(std::uint32_t value)
Set the Number of tracking steps.
Definition MutableTrajectory.cc:80
void setNOutliers(std::uint32_t value)
Set the Number of hits not considered.
Definition MutableTrajectory.cc:86
std::vector< edm4eic::Measurement2D >::const_iterator measurements_deprecated_end() const
Definition MutableTrajectory.cc:148
~MutableTrajectory()=default
destructor
const edm4eic::TrackSeed getSeed() const
Access the Corresponding track seed.
Definition MutableTrajectory.cc:69
void setNHoles(std::uint32_t value)
Set the Number of missing hits.
Definition MutableTrajectory.cc:89
MutableTrajectory & operator=(MutableTrajectory other)
copy-assignment operator
Definition MutableTrajectory.cc:32
std::vector< float >::const_iterator measurementChi2_end() const
Definition MutableTrajectory.cc:220
bool operator!=(const Trajectory &other) const
Definition MutableTrajectory.h:187
friend class TrajectoryCollection
Definition MutableTrajectory.h:41
MutableTrajectory clone(bool cloneRelations=true) const
Definition MutableTrajectory.cc:37
MutableTrajectory()
default constructor
Definition MutableTrajectory.cc:19
std::vector< float >::const_iterator outlierChi2_end() const
Definition MutableTrajectory.cc:256
bool isAvailable() const
check whether the object is actually available
Definition MutableTrajectory.cc:286
podio::RelationRange< float > getOutlierChi2() const
Definition MutableTrajectory.cc:273
void setSeed(const edm4eic::TrackSeed &value)
Set the Corresponding track seed.
Definition MutableTrajectory.cc:96
std::uint32_t getType() const
Access the 0 (does not have good track fit), 1 (has good track fit)
Definition MutableTrajectory.cc:62
std::vector< float >::const_iterator measurementChi2_begin() const
Definition MutableTrajectory.cc:214
std::uint32_t getNStates() const
Access the Number of tracking steps.
Definition MutableTrajectory.cc:63
friend class Trajectory
Definition MutableTrajectory.h:43
const podio::ObjectID getObjectID() const
Definition MutableTrajectory.cc:290
std::uint32_t getNHoles() const
Access the Number of missing hits.
Definition MutableTrajectory.cc:66
bool operator!=(const MutableTrajectory &other) const
Definition MutableTrajectory.h:186
std::uint32_t & nMeasurements()
Get reference to Number of hits used.
Definition MutableTrajectory.cc:85
std::size_t measurementChi2_size() const
Definition MutableTrajectory.cc:226
void unlink()
disconnect from TrajectoryObj instance
Definition MutableTrajectory.h:181
std::vector< edm4eic::Measurement2D >::const_iterator measurements_deprecated_begin() const
Definition MutableTrajectory.cc:142
podio::RelationRange< edm4eic::Measurement2D > getMeasurements_deprecated() const
Definition MutableTrajectory.cc:165
std::uint32_t & nHoles()
Get reference to Number of missing hits.
Definition MutableTrajectory.cc:91
void addToOutlierChi2(const float &)
Definition MutableTrajectory.cc:245
void setType(std::uint32_t value)
Set the 0 (does not have good track fit), 1 (has good track fit)
Definition MutableTrajectory.cc:77
std::vector< edm4eic::Measurement2D >::const_iterator outliers_deprecated_begin() const
Definition MutableTrajectory.cc:178
friend void swap(MutableTrajectory &a, MutableTrajectory &b)
Definition MutableTrajectory.h:196
std::size_t outlierChi2_size() const
Definition MutableTrajectory.cc:262
std::vector< edm4eic::TrackParameters >::const_iterator trackParameters_end() const
Definition MutableTrajectory.cc:112
std::uint32_t getNSharedHits() const
Access the Number of shared hits with other trajectories.
Definition MutableTrajectory.cc:67
std::vector< edm4eic::TrackParameters >::const_iterator trackParameters_begin() const
Definition MutableTrajectory.cc:106
std::size_t trackParameters_size() const
Definition MutableTrajectory.cc:118
Definition TrackParameters.h:43
Definition TrackSeed.h:46
Definition TrajectoryCollection.h:91
Definition Trajectory.h:47
Definition TrajectoryCollection.h:62
Definition CalorimeterHit.cc:17
OrderKey getOrderKey(const edm4eic::CalorimeterHit &obj)
Definition CalorimeterHit.cc:150