3#ifndef EDM4EIC_MutableTrajectory_H
4#define EDM4EIC_MutableTrajectory_H
12#include "podio/RelationRange.h"
16#include "podio/utilities/MaybeSharedPtr.h"
21#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
22#include "nlohmann/json_fwd.hpp"
28class MutableTrackSeed;
53 MutableTrajectory(std::uint32_t type, std::uint32_t nStates, std::uint32_t nMeasurements, std::uint32_t nOutliers, std::uint32_t nHoles, std::uint32_t nSharedHits);
96 void setType(std::uint32_t value);
153 void unlink() { m_obj = podio::utils::MaybeSharedPtr<TrajectoryObj>{
nullptr}; }
167 swap(a.m_obj, b.m_obj);
174 podio::utils::MaybeSharedPtr<TrajectoryObj> m_obj{
nullptr};
177#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
178void to_json(nlohmann::json& j,
const MutableTrajectory& value);
Definition Measurement2D.h:36
Definition MutableTrajectory.h:39
std::uint32_t getNMeasurements() const
Access the Number of hits used.
Definition MutableTrajectory.cc:49
podio::RelationRange< edm4eic::Measurement2D > getOutliers_deprecated() const
Definition MutableTrajectory.cc:177
void addToMeasurementChi2(float)
Definition MutableTrajectory.cc:185
std::vector< float >::const_iterator outlierChi2_begin() const
Definition MutableTrajectory.cc:226
podio::RelationRange< float > getMeasurementChi2() const
Definition MutableTrajectory.cc:213
std::size_t outliers_deprecated_size() const
Definition MutableTrajectory.cc:166
podio::RelationRange< edm4eic::TrackParameters > getTrackParameters() const
Definition MutableTrajectory.cc:105
void setSeed(edm4eic::TrackSeed value)
Set the Corresponding track seed.
Definition MutableTrajectory.cc:69
bool operator<(const MutableTrajectory &other) const
Definition MutableTrajectory.h:159
std::uint32_t getNOutliers() const
Access the Number of hits not considered.
Definition MutableTrajectory.cc:50
void setNMeasurements(std::uint32_t value)
Set the Number of hits used.
Definition MutableTrajectory.cc:64
MutableTrajectory clone() const
create a mutable deep-copy of the object with identical relations
Definition MutableTrajectory.cc:40
std::vector< edm4eic::Measurement2D >::const_iterator outliers_deprecated_end() const
Definition MutableTrajectory.cc:160
void addToOutliers_deprecated(edm4eic::Measurement2D)
Definition MutableTrajectory.cc:149
std::size_t measurements_deprecated_size() const
Definition MutableTrajectory.cc:130
podio::ObjectID id() const
Definition MutableTrajectory.h:161
bool operator==(const MutableTrajectory &other) const
Definition MutableTrajectory.h:155
MutableTrajectory(const MutableTrajectory &other)=default
copy constructor
void setNSharedHits(std::uint32_t value)
Set the Number of shared hits with other trajectories.
Definition MutableTrajectory.cc:67
void setNStates(std::uint32_t value)
Set the Number of tracking steps.
Definition MutableTrajectory.cc:63
void setNOutliers(std::uint32_t value)
Set the Number of hits not considered.
Definition MutableTrajectory.cc:65
std::vector< edm4eic::Measurement2D >::const_iterator measurements_deprecated_end() const
Definition MutableTrajectory.cc:124
~MutableTrajectory()=default
destructor
const edm4eic::TrackSeed getSeed() const
Access the Corresponding track seed.
Definition MutableTrajectory.cc:54
void setNHoles(std::uint32_t value)
Set the Number of missing hits.
Definition MutableTrajectory.cc:66
MutableTrajectory & operator=(MutableTrajectory other)
copy-assignment operator
Definition MutableTrajectory.cc:35
std::vector< float >::const_iterator measurementChi2_end() const
Definition MutableTrajectory.cc:196
friend class TrajectoryCollection
Definition MutableTrajectory.h:41
MutableTrajectory()
default constructor
Definition MutableTrajectory.cc:22
std::vector< float >::const_iterator outlierChi2_end() const
Definition MutableTrajectory.cc:232
bool isAvailable() const
check whether the object is actually available
Definition MutableTrajectory.cc:262
podio::RelationRange< float > getOutlierChi2() const
Definition MutableTrajectory.cc:249
std::uint32_t getType() const
Access the 0 (does not have good track fit), 1 (has good track fit)
Definition MutableTrajectory.cc:47
std::vector< float >::const_iterator measurementChi2_begin() const
Definition MutableTrajectory.cc:190
std::uint32_t getNStates() const
Access the Number of tracking steps.
Definition MutableTrajectory.cc:48
friend class Trajectory
Definition MutableTrajectory.h:43
const podio::ObjectID getObjectID() const
Definition MutableTrajectory.cc:269
std::uint32_t getNHoles() const
Access the Number of missing hits.
Definition MutableTrajectory.cc:51
std::size_t measurementChi2_size() const
Definition MutableTrajectory.cc:202
void unlink()
disconnect from TrajectoryObj instance
Definition MutableTrajectory.h:153
std::vector< edm4eic::Measurement2D >::const_iterator measurements_deprecated_begin() const
Definition MutableTrajectory.cc:118
podio::RelationRange< edm4eic::Measurement2D > getMeasurements_deprecated() const
Definition MutableTrajectory.cc:141
void setType(std::uint32_t value)
Set the 0 (does not have good track fit), 1 (has good track fit)
Definition MutableTrajectory.cc:62
void addToTrackParameters(edm4eic::TrackParameters)
Definition MutableTrajectory.cc:77
std::vector< edm4eic::Measurement2D >::const_iterator outliers_deprecated_begin() const
Definition MutableTrajectory.cc:154
friend void swap(MutableTrajectory &a, MutableTrajectory &b)
Definition MutableTrajectory.h:165
std::size_t outlierChi2_size() const
Definition MutableTrajectory.cc:238
void addToOutlierChi2(float)
Definition MutableTrajectory.cc:221
std::vector< edm4eic::TrackParameters >::const_iterator trackParameters_end() const
Definition MutableTrajectory.cc:88
std::uint32_t getNSharedHits() const
Access the Number of shared hits with other trajectories.
Definition MutableTrajectory.cc:52
void addToMeasurements_deprecated(edm4eic::Measurement2D)
Definition MutableTrajectory.cc:113
std::vector< edm4eic::TrackParameters >::const_iterator trackParameters_begin() const
Definition MutableTrajectory.cc:82
std::size_t trackParameters_size() const
Definition MutableTrajectory.cc:94
Definition TrackParameters.h:33
Definition TrackSeed.h:39
Definition TrajectoryCollection.h:95
Definition Trajectory.h:40
Definition TrajectoryCollection.h:66
Definition CalorimeterHit.cc:18