3#ifndef EDM4EIC_RawTrackerHit_H
4#define EDM4EIC_RawTrackerHit_H
10#include "podio/utilities/MaybeSharedPtr.h"
11#include "podio/detail/OrderKey.h"
16#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
17#include "nlohmann/json_fwd.hpp"
22class RawTrackerHitCollection;
33class MutableRawTrackerHit;
34class RawTrackerHitCollection;
35class RawTrackerHitCollectionData;
57 RawTrackerHit(std::uint64_t cellID, std::int32_t charge, std::int32_t timeStamp);
79 static constexpr auto typeName =
"edm4eic::RawTrackerHit";
97 void unlink() { m_obj = podio::utils::MaybeSharedPtr<RawTrackerHitObj>{
nullptr}; }
114 swap(a.m_obj, b.m_obj);
119 explicit RawTrackerHit(podio::utils::MaybeSharedPtr<RawTrackerHitObj> obj);
122 podio::utils::MaybeSharedPtr<RawTrackerHitObj> m_obj{
nullptr};
125std::ostream&
operator<<(std::ostream& o,
const RawTrackerHit& value);
127#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
128void to_json(nlohmann::json& j,
const RawTrackerHit& value);
Definition MutableRawTrackerHit.h:33
Definition RawTrackerHitCollectionData.h:30
Definition RawTrackerHitCollection.h:91
Definition RawTrackerHitCollection.h:36
Definition RawTrackerHit.h:41
const podio::ObjectID getObjectID() const
Definition RawTrackerHit.cc:67
std::uint64_t getCellID() const
Access the The detector specific (geometrical) cell id.
Definition RawTrackerHit.cc:54
~RawTrackerHit()=default
destructor
void unlink()
disconnect from RawTrackerHitObj instance
Definition RawTrackerHit.h:97
std::int32_t getTimeStamp() const
Access the TDC value.
Definition RawTrackerHit.cc:56
RawTrackerHit()
default constructor
Definition RawTrackerHit.cc:20
bool operator==(const RawTrackerHit &other) const
Definition RawTrackerHit.h:99
bool operator!=(const RawTrackerHit &other) const
Definition RawTrackerHit.h:102
RawTrackerHit & operator=(RawTrackerHit other)
copy-assignment operator
Definition RawTrackerHit.cc:30
friend class MutableRawTrackerHit
Definition RawTrackerHit.h:43
bool isAvailable() const
check whether the object is actually available
Definition RawTrackerHit.cc:63
MutableRawTrackerHit clone(bool cloneRelations=true) const
Definition RawTrackerHit.cc:35
bool operator!=(const MutableRawTrackerHit &other) const
Definition RawTrackerHit.h:103
std::int32_t getCharge() const
Access the ADC value.
Definition RawTrackerHit.cc:55
friend class RawTrackerHitCollection
Definition RawTrackerHit.h:44
bool operator<(const RawTrackerHit &other) const
Definition RawTrackerHit.h:106
podio::ObjectID id() const
Definition RawTrackerHit.h:108
static RawTrackerHit makeEmpty()
Definition RawTrackerHit.cc:50
RawTrackerHit(const RawTrackerHit &other)=default
copy constructor
friend void swap(RawTrackerHit &a, RawTrackerHit &b)
Definition RawTrackerHit.h:112
static constexpr auto typeName
Definition RawTrackerHit.h:79
Definition RawTrackerHitObj.h:17
Definition CalorimeterHit.cc:17
std::ostream & operator<<(std::ostream &o, const CalorimeterHit &value)
Definition CalorimeterHit.cc:103
Definition CalorimeterHit.h:31
OrderKey getOrderKey(const edm4eic::CalorimeterHit &obj)
Definition CalorimeterHit.cc:150