3#ifndef EICD_MutableMCRecoTrackParticleAssociation_H
4#define EICD_MutableMCRecoTrackParticleAssociation_H
11#include "podio/ObjectID.h"
14#ifdef PODIO_JSON_OUTPUT
15#include "nlohmann/json.hpp"
25class MutableMCParticle;
69 const std::uint32_t&
getSimID()
const;
72 const std::uint32_t&
getRecID()
const;
81 const edm4hep::MCParticle
getSim()
const;
96 void setSim(edm4hep::MCParticle value);
118 swap(a.m_obj, b.m_obj);
125#ifdef PODIO_JSON_OUTPUT
126void to_json(nlohmann::json& j,
const MutableMCRecoTrackParticleAssociation& value);
Definition: MCRecoTrackParticleAssociationCollection.h:82
Definition: MCRecoTrackParticleAssociation.h:35
Definition: MCRecoTrackParticleAssociationCollection.h:57
Definition: MCRecoTrackParticleAssociationObj.h:24
Definition: MutableMCRecoTrackParticleAssociation.h:36
unsigned int id() const
Definition: MutableMCRecoTrackParticleAssociation.h:112
const podio::ObjectID getObjectID() const
Definition: MutableMCRecoTrackParticleAssociation.cc:105
const std::uint32_t & getSimID() const
Access the Index of corresponding MCParticle (position in MCParticles array)
Definition: MutableMCRecoTrackParticleAssociation.cc:55
void unlink()
disconnect from MCRecoTrackParticleAssociationObj instance
Definition: MutableMCRecoTrackParticleAssociation.h:104
MutableMCRecoTrackParticleAssociation & operator=(MutableMCRecoTrackParticleAssociation other)
copy-assignment operator
Definition: MutableMCRecoTrackParticleAssociation.cc:33
void setRecID(std::uint32_t value)
Set the Index of corresponding Track (position in Tracks array)
Definition: MutableMCRecoTrackParticleAssociation.cc:75
friend void swap(MutableMCRecoTrackParticleAssociation &a, MutableMCRecoTrackParticleAssociation &b)
Definition: MutableMCRecoTrackParticleAssociation.h:116
~MutableMCRecoTrackParticleAssociation()
destructor
Definition: MutableMCRecoTrackParticleAssociation.cc:48
const edm4hep::MCParticle getSim() const
Access the reference to the Monte-Carlo particle.
Definition: MutableMCRecoTrackParticleAssociation.cc:66
bool isAvailable() const
check whether the object is actually available
Definition: MutableMCRecoTrackParticleAssociation.cc:98
void setSim(edm4hep::MCParticle value)
Set the reference to the Monte-Carlo particle.
Definition: MutableMCRecoTrackParticleAssociation.cc:85
MutableMCRecoTrackParticleAssociation()
default constructor
Definition: MutableMCRecoTrackParticleAssociation.cc:18
friend class MCRecoTrackParticleAssociation
Definition: MutableMCRecoTrackParticleAssociation.h:40
bool operator<(const MutableMCRecoTrackParticleAssociation &other) const
Definition: MutableMCRecoTrackParticleAssociation.h:110
const eicd::Track getRec() const
Access the reference to the track.
Definition: MutableMCRecoTrackParticleAssociation.cc:59
const float & getWeight() const
Access the weight of this association.
Definition: MutableMCRecoTrackParticleAssociation.cc:57
void setRec(eicd::Track value)
Set the reference to the track.
Definition: MutableMCRecoTrackParticleAssociation.cc:78
const std::uint32_t & getRecID() const
Access the Index of corresponding Track (position in Tracks array)
Definition: MutableMCRecoTrackParticleAssociation.cc:56
bool operator==(const MutableMCRecoTrackParticleAssociation &other) const
Definition: MutableMCRecoTrackParticleAssociation.h:106
MutableMCRecoTrackParticleAssociation clone() const
create a mutable deep-copy of the object with identical relations
Definition: MutableMCRecoTrackParticleAssociation.cc:44
void setWeight(float value)
Set the weight of this association.
Definition: MutableMCRecoTrackParticleAssociation.cc:76
void setSimID(std::uint32_t value)
Set the Index of corresponding MCParticle (position in MCParticles array)
Definition: MutableMCRecoTrackParticleAssociation.cc:74
Definition: MCRecoClusterParticleAssociation.h:21
Definition: CalorimeterHit.cc:13