3#ifndef EDM4EIC_MutableInclusiveKinematics_H
4#define EDM4EIC_MutableInclusiveKinematics_H
11#include "podio/utilities/MaybeSharedPtr.h"
15#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
16#include "nlohmann/json_fwd.hpp"
21class ReconstructedParticle;
22class MutableReconstructedParticle;
85 void setX(
float value);
89 [[deprecated(
"use getX instead")]]
93 void setQ2(
float value);
97 [[deprecated(
"use getQ2 instead")]]
101 void setW(
float value);
105 [[deprecated(
"use getW instead")]]
109 void setY(
float value);
113 [[deprecated(
"use getY instead")]]
117 void setNu(
float value);
121 [[deprecated(
"use getNu instead")]]
134 void unlink() { m_obj = podio::utils::MaybeSharedPtr<InclusiveKinematicsObj>{
nullptr}; }
151 swap(a.m_obj, b.m_obj);
158 podio::utils::MaybeSharedPtr<InclusiveKinematicsObj> m_obj{
nullptr};
161#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
162void to_json(nlohmann::json& j,
const MutableInclusiveKinematics& value);
Definition InclusiveKinematicsCollection.h:92
Definition InclusiveKinematics.h:35
Definition InclusiveKinematicsCollection.h:63
Definition MutableInclusiveKinematics.h:33
MutableInclusiveKinematics()
default constructor
Definition MutableInclusiveKinematics.cc:19
float getNu() const
Access the Energy transfer P.q/M [GeV].
Definition MutableInclusiveKinematics.cc:50
void setW(float value)
Set the Invariant mass of final state [GeV].
Definition MutableInclusiveKinematics.cc:66
MutableInclusiveKinematics & operator=(MutableInclusiveKinematics other)
copy-assignment operator
Definition MutableInclusiveKinematics.cc:31
float & x()
Get reference to Bjorken x (Q2/2P.q)
Definition MutableInclusiveKinematics.cc:62
float getX() const
Access the Bjorken x (Q2/2P.q)
Definition MutableInclusiveKinematics.cc:46
void setNu(float value)
Set the Energy transfer P.q/M [GeV].
Definition MutableInclusiveKinematics.cc:72
float & Q2()
Get reference to Four-momentum transfer squared [GeV^2].
Definition MutableInclusiveKinematics.cc:65
MutableInclusiveKinematics(const MutableInclusiveKinematics &other)=default
copy constructor
void setX(float value)
Set the Bjorken x (Q2/2P.q)
Definition MutableInclusiveKinematics.cc:60
bool operator!=(const InclusiveKinematics &other) const
Definition MutableInclusiveKinematics.h:140
float & y()
Get reference to Inelasticity (P.q/P.k)
Definition MutableInclusiveKinematics.cc:71
float getY() const
Access the Inelasticity (P.q/P.k)
Definition MutableInclusiveKinematics.cc:49
void unlink()
disconnect from InclusiveKinematicsObj instance
Definition MutableInclusiveKinematics.h:134
podio::ObjectID id() const
Definition MutableInclusiveKinematics.h:145
friend class InclusiveKinematicsCollection
Definition MutableInclusiveKinematics.h:35
MutableInclusiveKinematics clone(bool cloneRelations=true) const
Definition MutableInclusiveKinematics.cc:36
bool isAvailable() const
check whether the object is actually available
Definition MutableInclusiveKinematics.cc:87
bool operator==(const MutableInclusiveKinematics &other) const
Definition MutableInclusiveKinematics.h:136
bool operator<(const MutableInclusiveKinematics &other) const
Definition MutableInclusiveKinematics.h:143
~MutableInclusiveKinematics()=default
destructor
void setY(float value)
Set the Inelasticity (P.q/P.k)
Definition MutableInclusiveKinematics.cc:69
const podio::ObjectID getObjectID() const
Definition MutableInclusiveKinematics.cc:91
float getQ2() const
Access the Four-momentum transfer squared [GeV^2].
Definition MutableInclusiveKinematics.cc:47
friend class InclusiveKinematics
Definition MutableInclusiveKinematics.h:37
friend void swap(MutableInclusiveKinematics &a, MutableInclusiveKinematics &b)
Definition MutableInclusiveKinematics.h:149
float getW() const
Access the Invariant mass of final state [GeV].
Definition MutableInclusiveKinematics.cc:48
float & W()
Get reference to Invariant mass of final state [GeV].
Definition MutableInclusiveKinematics.cc:68
bool operator!=(const MutableInclusiveKinematics &other) const
Definition MutableInclusiveKinematics.h:139
const edm4eic::ReconstructedParticle getScat() const
Access the Associated scattered electron (if identified)
Definition MutableInclusiveKinematics.cc:52
float & nu()
Get reference to Energy transfer P.q/M [GeV].
Definition MutableInclusiveKinematics.cc:74
void setQ2(float value)
Set the Four-momentum transfer squared [GeV^2].
Definition MutableInclusiveKinematics.cc:63
void setScat(const edm4eic::ReconstructedParticle &value)
Set the Associated scattered electron (if identified)
Definition MutableInclusiveKinematics.cc:76
Definition ReconstructedParticle.h:47
Definition CalorimeterHit.cc:17