3#ifndef EICD_MutableTrackSegment_H
4#define EICD_MutableTrackSegment_H
11#include "podio/RelationRange.h"
13#include "podio/ObjectID.h"
16#ifdef PODIO_JSON_OUTPUT
17#include "nlohmann/json.hpp"
89 std::vector<eicd::TrackPoint>::const_iterator
points_begin()
const;
90 std::vector<eicd::TrackPoint>::const_iterator
points_end()
const;
91 podio::RelationRange<eicd::TrackPoint>
getPoints()
const;
112 swap(a.m_obj, b.m_obj);
119#ifdef PODIO_JSON_OUTPUT
120void to_json(nlohmann::json& j,
const MutableTrackSegment& value);
Definition: MutableTrackSegment.h:34
const float & getLength() const
Access the Pathlength from the first to the last point.
Definition: MutableTrackSegment.cc:53
~MutableTrackSegment()
destructor
Definition: MutableTrackSegment.cc:46
const float & getLengthError() const
Access the Error on the segment length.
Definition: MutableTrackSegment.cc:54
std::vector< eicd::TrackPoint >::const_iterator points_begin() const
Definition: MutableTrackSegment.cc:80
const podio::ObjectID getObjectID() const
Definition: MutableTrackSegment.cc:123
MutableTrackSegment()
default constructor
Definition: MutableTrackSegment.cc:17
const eicd::Track getTrack() const
Access the Track used for this projection.
Definition: MutableTrackSegment.cc:56
bool isAvailable() const
check whether the object is actually available
Definition: MutableTrackSegment.cc:116
unsigned int points_size() const
Definition: MutableTrackSegment.cc:92
friend class TrackSegment
Definition: MutableTrackSegment.h:38
friend void swap(MutableTrackSegment &a, MutableTrackSegment &b)
Definition: MutableTrackSegment.h:110
void setLength(float value)
Set the Pathlength from the first to the last point.
Definition: MutableTrackSegment.cc:64
unsigned int id() const
Definition: MutableTrackSegment.h:106
void setTrack(eicd::Track value)
Set the Track used for this projection.
Definition: MutableTrackSegment.cc:67
MutableTrackSegment clone() const
create a mutable deep-copy of the object with identical relations
Definition: MutableTrackSegment.cc:42
void unlink()
disconnect from TrackSegmentObj instance
Definition: MutableTrackSegment.h:98
void addToPoints(eicd::TrackPoint)
Definition: MutableTrackSegment.cc:75
bool operator<(const MutableTrackSegment &other) const
Definition: MutableTrackSegment.h:104
std::vector< eicd::TrackPoint >::const_iterator points_end() const
Definition: MutableTrackSegment.cc:86
MutableTrackSegment & operator=(MutableTrackSegment other)
copy-assignment operator
Definition: MutableTrackSegment.cc:31
bool operator==(const MutableTrackSegment &other) const
Definition: MutableTrackSegment.h:100
podio::RelationRange< eicd::TrackPoint > getPoints() const
Definition: MutableTrackSegment.cc:103
void setLengthError(float value)
Set the Error on the segment length.
Definition: MutableTrackSegment.cc:65
Definition: TrackPoint.h:18
Definition: TrackSegmentCollection.h:82
Definition: TrackSegment.h:33
Definition: TrackSegmentCollection.h:57
Definition: TrackSegmentObj.h:23
Definition: CalorimeterHit.cc:13