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 InclusiveKinematicsCollection;
22class ReconstructedParticle;
23class MutableReconstructedParticle;
86 void setX(
float value);
90 [[deprecated(
"use getX instead")]]
94 void setQ2(
float value);
98 [[deprecated(
"use getQ2 instead")]]
102 void setW(
float value);
106 [[deprecated(
"use getW instead")]]
110 void setY(
float value);
114 [[deprecated(
"use getY instead")]]
118 void setNu(
float value);
122 [[deprecated(
"use getNu instead")]]
135 void unlink() { m_obj = podio::utils::MaybeSharedPtr<InclusiveKinematicsObj>{
nullptr}; }
152 swap(a.m_obj, b.m_obj);
159 podio::utils::MaybeSharedPtr<InclusiveKinematicsObj> m_obj{
nullptr};
162#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
163void to_json(nlohmann::json& j,
const MutableInclusiveKinematics& value);
Definition InclusiveKinematicsCollection.h:91
Definition InclusiveKinematics.h:42
Definition InclusiveKinematicsCollection.h:62
Definition MutableInclusiveKinematics.h:34
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:141
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:135
podio::ObjectID id() const
Definition MutableInclusiveKinematics.h:146
friend class InclusiveKinematicsCollection
Definition MutableInclusiveKinematics.h:36
MutableInclusiveKinematics clone(bool cloneRelations=true) const
Definition MutableInclusiveKinematics.cc:36
bool isAvailable() const
check whether the object is actually available
Definition MutableInclusiveKinematics.cc:86
bool operator==(const MutableInclusiveKinematics &other) const
Definition MutableInclusiveKinematics.h:137
bool operator<(const MutableInclusiveKinematics &other) const
Definition MutableInclusiveKinematics.h:144
~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:90
float getQ2() const
Access the Four-momentum transfer squared [GeV^2].
Definition MutableInclusiveKinematics.cc:47
friend class InclusiveKinematics
Definition MutableInclusiveKinematics.h:38
friend void swap(MutableInclusiveKinematics &a, MutableInclusiveKinematics &b)
Definition MutableInclusiveKinematics.h:150
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:140
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:54
Definition CalorimeterHit.cc:17
OrderKey getOrderKey(const edm4eic::CalorimeterHit &obj)
Definition CalorimeterHit.cc:150