3#ifndef EDM4EIC_MutableTrackerHit_H
4#define EDM4EIC_MutableTrackerHit_H
11#include "edm4hep/Vector3f.h"
14#include "podio/utilities/MaybeSharedPtr.h"
18#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
19#include "nlohmann/json_fwd.hpp"
100 [[deprecated(
"use getCellID instead")]]
108 [[deprecated(
"use getPosition instead")]]
116 [[deprecated(
"use getPositionError instead")]]
124 [[deprecated(
"use getTime instead")]]
132 [[deprecated(
"use getTimeError instead")]]
140 [[deprecated(
"use getEdep instead")]]
148 [[deprecated(
"use getEdepError instead")]]
161 void unlink() { m_obj = podio::utils::MaybeSharedPtr<TrackerHitObj>{
nullptr}; }
176 friend std::hash<MutableTrackerHit>;
180 swap(a.m_obj, b.m_obj);
187 podio::utils::MaybeSharedPtr<TrackerHitObj> m_obj{
nullptr};
190#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
202 return std::hash<edm4eic::TrackerHitObj*>{}(obj.m_obj.get());
Definition CovDiag3f.h:18
Definition MutableRawTrackerHit.h:33
Definition MutableTrackerHit.h:37
friend class TrackerHitCollection
Definition MutableTrackerHit.h:39
~MutableTrackerHit()=default
destructor
MutableTrackerHit & operator=(MutableTrackerHit other) &
copy-assignment operator
Definition MutableTrackerHit.cc:33
TrackerHit object_type
Definition MutableTrackerHit.h:44
void setRawHit(const edm4eic::RawTrackerHit &value)
Set the Related raw tracker hit.
Definition MutableTrackerHit.cc:86
MutableTrackerHit & operator=(MutableTrackerHit other) &&=delete
friend class TrackerHit
Definition MutableTrackerHit.h:41
std::uint64_t & cellID()
Get reference to The detector specific (geometrical) cell id.
Definition MutableTrackerHit.cc:66
const podio::ObjectID getObjectID() const
Definition MutableTrackerHit.cc:100
float & time()
Get reference to Hit time [ns].
Definition MutableTrackerHit.cc:75
float getEdep() const
Access the Energy deposit in this hit [GeV].
Definition MutableTrackerHit.cc:53
edm4eic::CovDiag3f & positionError()
Get reference to Covariance Matrix.
Definition MutableTrackerHit.cc:72
bool isAvailable() const
check whether the object is actually available
Definition MutableTrackerHit.cc:96
float getTimeError() const
Access the Error on the time.
Definition MutableTrackerHit.cc:52
void setCellID(const std::uint64_t cellID)
Set the The detector specific (geometrical) cell id.
Definition MutableTrackerHit.cc:64
void setTimeError(const float timeError)
Set the Error on the time.
Definition MutableTrackerHit.cc:76
void unlink()
disconnect from TrackerHitObj instance
Definition MutableTrackerHit.h:161
void setEdep(const float edep)
Set the Energy deposit in this hit [GeV].
Definition MutableTrackerHit.cc:79
bool operator!=(const TrackerHit &other) const
Definition MutableTrackerHit.h:167
float getTime() const
Access the Hit time [ns].
Definition MutableTrackerHit.cc:51
bool operator<(const MutableTrackerHit &other) const
Definition MutableTrackerHit.h:170
const edm4eic::RawTrackerHit getRawHit() const
Access the Related raw tracker hit.
Definition MutableTrackerHit.cc:56
float & edepError()
Get reference to Error on the energy deposit [GeV].
Definition MutableTrackerHit.cc:84
void setEdepError(const float edepError)
Set the Error on the energy deposit [GeV].
Definition MutableTrackerHit.cc:82
MutableTrackerHit clone(bool cloneRelations=true) const
Definition MutableTrackerHit.cc:38
float & edep()
Get reference to Energy deposit in this hit [GeV].
Definition MutableTrackerHit.cc:81
float & timeError()
Get reference to Error on the time.
Definition MutableTrackerHit.cc:78
void setPosition(const edm4hep::Vector3f &position)
Set the Hit (cell) position [mm].
Definition MutableTrackerHit.cc:67
const edm4eic::CovDiag3f & getPositionError() const
Access the Covariance Matrix.
Definition MutableTrackerHit.cc:50
friend class TrackerHitMutableCollectionIterator
Definition MutableTrackerHit.h:40
bool operator!=(const MutableTrackerHit &other) const
Definition MutableTrackerHit.h:166
std::uint64_t getCellID() const
Access the The detector specific (geometrical) cell id.
Definition MutableTrackerHit.cc:48
const edm4hep::Vector3f & getPosition() const
Access the Hit (cell) position [mm].
Definition MutableTrackerHit.cc:49
TrackerHitCollection collection_type
Definition MutableTrackerHit.h:45
void setPositionError(const edm4eic::CovDiag3f &positionError)
Set the Covariance Matrix.
Definition MutableTrackerHit.cc:70
friend void swap(MutableTrackerHit &a, MutableTrackerHit &b)
Definition MutableTrackerHit.h:178
edm4hep::Vector3f & position()
Get reference to Hit (cell) position [mm].
Definition MutableTrackerHit.cc:69
void setTime(const float time)
Set the Hit time [ns].
Definition MutableTrackerHit.cc:73
bool operator==(const MutableTrackerHit &other) const
Definition MutableTrackerHit.h:163
MutableTrackerHit(const MutableTrackerHit &other)=default
copy constructor
MutableTrackerHit()
default constructor
Definition MutableTrackerHit.cc:19
float getEdepError() const
Access the Error on the energy deposit [GeV].
Definition MutableTrackerHit.cc:54
podio::ObjectID id() const
Definition MutableTrackerHit.h:172
Definition RawTrackerHit.h:41
Definition TrackerHitCollection.h:137
Definition TrackerHit.h:45
Definition CalorimeterHit.cc:17
OrderKey getOrderKey(const edm4eic::CalorimeterHit &obj)
Definition CalorimeterHit.cc:150
std::size_t operator()(const edm4eic::MutableTrackerHit &obj) const
Definition MutableTrackerHit.h:201