3#ifndef EICD_TrackSegment_H
4#define EICD_TrackSegment_H
9#include "podio/RelationRange.h"
11#include "podio/ObjectID.h"
14#ifdef PODIO_JSON_OUTPUT
15#include "nlohmann/json.hpp"
27class MutableTrackSegment;
74 std::vector<eicd::TrackPoint>::const_iterator
points_begin()
const;
75 std::vector<eicd::TrackPoint>::const_iterator
points_end()
const;
76 podio::RelationRange<eicd::TrackPoint>
getPoints()
const;
96 swap(a.m_obj, b.m_obj);
103std::ostream&
operator<<(std::ostream& o,
const TrackSegment& value);
105#ifdef PODIO_JSON_OUTPUT
106void to_json(nlohmann::json& j,
const TrackSegment& value);
Definition: MutableTrackSegment.h:34
Definition: TrackPoint.h:18
Definition: TrackSegmentCollection.h:82
Definition: TrackSegmentCollection.h:35
Definition: TrackSegment.h:33
TrackSegment()
default constructor
Definition: TrackSegment.cc:17
const eicd::Track getTrack() const
Access the Track used for this projection.
Definition: TrackSegment.cc:55
const float & getLengthError() const
Access the Error on the segment length.
Definition: TrackSegment.cc:53
std::vector< eicd::TrackPoint >::const_iterator points_end() const
Definition: TrackSegment.cc:70
const podio::ObjectID getObjectID() const
Definition: TrackSegment.cc:106
~TrackSegment()
destructor
Definition: TrackSegment.cc:46
std::vector< eicd::TrackPoint >::const_iterator points_begin() const
Definition: TrackSegment.cc:64
bool isAvailable() const
check whether the object is actually available
Definition: TrackSegment.cc:99
unsigned int id() const
Definition: TrackSegment.h:90
podio::RelationRange< eicd::TrackPoint > getPoints() const
Definition: TrackSegment.cc:87
friend void swap(TrackSegment &a, TrackSegment &b)
Definition: TrackSegment.h:94
unsigned int points_size() const
Definition: TrackSegment.cc:76
MutableTrackSegment clone() const
create a mutable deep-copy of the object with identical relations
Definition: TrackSegment.cc:42
bool operator==(const TrackSegment &other) const
Definition: TrackSegment.h:84
void unlink()
disconnect from TrackSegmentObj instance
Definition: TrackSegment.h:82
bool operator<(const TrackSegment &other) const
Definition: TrackSegment.h:88
const float & getLength() const
Access the Pathlength from the first to the last point.
Definition: TrackSegment.cc:52
TrackSegment & operator=(TrackSegment other)
copy-assignment operator
Definition: TrackSegment.cc:31
Definition: TrackSegmentObj.h:23
Definition: CalorimeterHit.cc:13
std::ostream & operator<<(std::ostream &o, const CalorimeterHit &value)
Definition: CalorimeterHit.cc:93