3#ifndef EDM4EIC_MCRecoTrackerHitAssociation_H
4#define EDM4EIC_MCRecoTrackerHitAssociation_H
9#include "podio/utilities/MaybeSharedPtr.h"
10#include "podio/detail/OrderKey.h"
15#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
16#include "nlohmann/json_fwd.hpp"
27class MutableSimTrackerHit;
33OrderKey
getOrderKey(
const edm4eic::MCRecoTrackerHitAssociation& obj);
85 static constexpr std::string_view
typeName =
"edm4eic::MCRecoTrackerHitAssociation";
94 const edm4hep::SimTrackerHit
getSimHit()
const;
101 void unlink() { m_obj = podio::utils::MaybeSharedPtr<MCRecoTrackerHitAssociationObj>{
nullptr}; }
116 friend std::hash<MCRecoTrackerHitAssociation>;
120 swap(a.m_obj, b.m_obj);
133#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
143struct std::hash<
edm4eic::MCRecoTrackerHitAssociation> {
145 return std::hash<edm4eic::MCRecoTrackerHitAssociationObj*>{}(obj.m_obj.get());
153#if defined(__clang__)
154 #pragma clang diagnostic push
155 #pragma clang diagnostic ignored "-Wunknown-warning-option"
156 #pragma clang diagnostic ignored "-Wdeprecated-redundant-constexpr-static-def"
157 #pragma clang diagnostic ignored "-Wdeprecated"
159 #pragma clang diagnostic pop
160#elif defined(__GNUC__)
161 #pragma GCC diagnostic push
162 #pragma GCC diagnostic ignored "-Wdeprecated"
164 #pragma GCC diagnostic pop
Definition MCRecoTrackerHitAssociationCollectionData.h:33
Definition MCRecoTrackerHitAssociationCollection.h:138
Definition MCRecoTrackerHitAssociation.h:46
MutableMCRecoTrackerHitAssociation clone(bool cloneRelations=true) const
Definition MCRecoTrackerHitAssociation.cc:31
MCRecoTrackerHitAssociation()=default
default constructor
friend void swap(MCRecoTrackerHitAssociation &a, MCRecoTrackerHitAssociation &b)
Definition MCRecoTrackerHitAssociation.h:118
~MCRecoTrackerHitAssociation()=default
destructor
MCRecoTrackerHitAssociation & operator=(MCRecoTrackerHitAssociation other) &&=delete
bool operator<(const MCRecoTrackerHitAssociation &other) const
Definition MCRecoTrackerHitAssociation.h:110
MCRecoTrackerHitAssociation(const MCRecoTrackerHitAssociation &other)=default
copy constructor
friend class MCRecoTrackerHitAssociationCollectionIterator
Definition MCRecoTrackerHitAssociation.h:51
bool isAvailable() const
check whether the object is actually available
Definition MCRecoTrackerHitAssociation.cc:77
float getWeight() const
Access the weight of this association.
Definition MCRecoTrackerHitAssociation.cc:56
static constexpr std::string_view typeName
Definition MCRecoTrackerHitAssociation.h:85
MCRecoTrackerHitAssociation & operator=(MCRecoTrackerHitAssociation other) &
copy-assignment operator
Definition MCRecoTrackerHitAssociation.cc:26
friend class MutableMCRecoTrackerHitAssociation
Definition MCRecoTrackerHitAssociation.h:48
bool operator!=(const MutableMCRecoTrackerHitAssociation &other) const
Definition MCRecoTrackerHitAssociation.h:107
static MCRecoTrackerHitAssociation makeEmpty()
Definition MCRecoTrackerHitAssociation.cc:52
MCRecoTrackerHitAssociationCollection collection_type
Definition MCRecoTrackerHitAssociation.h:56
bool operator!=(const MCRecoTrackerHitAssociation &other) const
Definition MCRecoTrackerHitAssociation.h:106
MutableMCRecoTrackerHitAssociation mutable_type
Definition MCRecoTrackerHitAssociation.h:55
bool operator==(const MCRecoTrackerHitAssociation &other) const
Definition MCRecoTrackerHitAssociation.h:103
void unlink()
disconnect from MCRecoTrackerHitAssociationObj instance
Definition MCRecoTrackerHitAssociation.h:101
const podio::ObjectID getObjectID() const
Definition MCRecoTrackerHitAssociation.cc:81
podio::ObjectID id() const
Definition MCRecoTrackerHitAssociation.h:112
friend class MCRecoTrackerHitAssociationCollection
Definition MCRecoTrackerHitAssociation.h:49
const edm4eic::RawTrackerHit getRawHit() const
Access the reference to the digitized hit.
Definition MCRecoTrackerHitAssociation.cc:58
const edm4hep::SimTrackerHit getSimHit() const
Access the reference to the simulated hit.
Definition MCRecoTrackerHitAssociation.cc:65
Definition MCRecoTrackerHitAssociationObj.h:24
Definition MutableMCRecoTrackerHitAssociation.h:38
Definition MutableRawTrackerHit.h:33
Definition RawTrackerHit.h:41
Definition CalorimeterHit.cc:17
std::ostream & operator<<(std::ostream &o, const CalorimeterHit &value)
Definition CalorimeterHit.cc:99
Definition CalorimeterHit.h:25
Definition CalorimeterHit.h:31
OrderKey getOrderKey(const edm4eic::CalorimeterHit &obj)
Definition CalorimeterHit.cc:146
std::size_t operator()(const edm4eic::MCRecoTrackerHitAssociation &obj) const
Definition MCRecoTrackerHitAssociation.h:144