EICd
EIC data model
eic::BasicParticle Class Reference

#include <BasicParticle.h>

Public Member Functions

 BasicParticle ()
 default constructor More...
 
 BasicParticle (eic::Index ID, eic::VectorXYZ p, eic::VectorXYZ v, float time, std::int32_t pid, std::int16_t status, std::int16_t charge, eic::Weight weight)
 
 BasicParticle (BasicParticleObj *obj)
 constructor from existing BasicParticleObj More...
 
 BasicParticle (const BasicParticle &other)
 copy constructor More...
 
BasicParticleoperator= (const BasicParticle &other)
 copy-assignment operator More...
 
BasicParticle clone () const
 support cloning (deep-copy) More...
 
 ~BasicParticle ()
 destructor More...
 
 operator ConstBasicParticle () const
 conversion to const object More...
 
const eic::IndexID () const
 Access the Unique particle index. More...
 
const eic::VectorXYZp () const
 Access the momentum [GeV]. More...
 
const eic::VectorXYZv () const
 Access the vertex [mm]. More...
 
const float & time () const
 Access the Time in [ns]. More...
 
const std::int32_t & pid () const
 Access the particle PDG code. More...
 
const std::int16_t & status () const
 Access the Status code. More...
 
const std::int16_t & charge () const
 Access the Particle charge (or sign) More...
 
const eic::Weightweight () const
 Access the Particle weight, e.g. from PID algorithm [0-1]. More...
 
void ID (eic::Index value)
 Set the Unique particle index. More...
 
eic::IndexID ()
 Get reference to Unique particle index. More...
 
void p (eic::VectorXYZ value)
 Set the momentum [GeV]. More...
 
eic::VectorXYZp ()
 Get reference to momentum [GeV]. More...
 
void v (eic::VectorXYZ value)
 Set the vertex [mm]. More...
 
eic::VectorXYZv ()
 Get reference to vertex [mm]. More...
 
void time (float value)
 Set the Time in [ns]. More...
 
void pid (std::int32_t value)
 Set the particle PDG code. More...
 
void status (std::int16_t value)
 Set the Status code. More...
 
void charge (std::int16_t value)
 Set the Particle charge (or sign) More...
 
void weight (eic::Weight value)
 Set the Particle weight, e.g. from PID algorithm [0-1]. More...
 
eic::Weightweight ()
 Get reference to Particle weight, e.g. from PID algorithm [0-1]. More...
 
bool isAvailable () const
 check whether the object is actually available More...
 
void unlink ()
 disconnect from BasicParticleObj instance More...
 
bool operator== (const BasicParticle &other) const
 
bool operator== (const ConstBasicParticle &other) const
 
bool operator< (const BasicParticle &other) const
 
unsigned int id () const
 
const podio::ObjectID getObjectID () const
 

Friends

class BasicParticleCollection
 
class BasicParticleCollectionIterator
 
class ConstBasicParticle
 

Detailed Description

Basic particle used internally to communicate basic particle properties.

Author
: W. Armstrong, S. Joosten

Constructor & Destructor Documentation

◆ BasicParticle() [1/4]

eic::BasicParticle::BasicParticle ( )

default constructor

◆ BasicParticle() [2/4]

eic::BasicParticle::BasicParticle ( eic::Index  ID,
eic::VectorXYZ  p,
eic::VectorXYZ  v,
float  time,
std::int32_t  pid,
std::int16_t  status,
std::int16_t  charge,
eic::Weight  weight 
)

◆ BasicParticle() [3/4]

eic::BasicParticle::BasicParticle ( BasicParticleObj obj)

constructor from existing BasicParticleObj

◆ BasicParticle() [4/4]

eic::BasicParticle::BasicParticle ( const BasicParticle other)

copy constructor

◆ ~BasicParticle()

eic::BasicParticle::~BasicParticle ( )

destructor

Member Function Documentation

◆ charge() [1/2]

const std::int16_t & eic::BasicParticle::charge ( ) const

Access the Particle charge (or sign)

◆ charge() [2/2]

void eic::BasicParticle::charge ( std::int16_t  value)

Set the Particle charge (or sign)

◆ clone()

BasicParticle eic::BasicParticle::clone ( ) const

support cloning (deep-copy)

◆ getObjectID()

const podio::ObjectID eic::BasicParticle::getObjectID ( ) const

◆ ID() [1/3]

eic::Index & eic::BasicParticle::ID ( )

Get reference to Unique particle index.

◆ ID() [2/3]

const eic::Index & eic::BasicParticle::ID ( ) const

Access the Unique particle index.

◆ id()

unsigned int eic::BasicParticle::id ( ) const
inline

◆ ID() [3/3]

void eic::BasicParticle::ID ( eic::Index  value)

Set the Unique particle index.

◆ isAvailable()

bool eic::BasicParticle::isAvailable ( ) const

check whether the object is actually available

◆ operator ConstBasicParticle()

eic::BasicParticle::operator ConstBasicParticle ( ) const

conversion to const object

◆ operator<()

bool eic::BasicParticle::operator< ( const BasicParticle other) const
inline

◆ operator=()

BasicParticle & eic::BasicParticle::operator= ( const BasicParticle other)

copy-assignment operator

◆ operator==() [1/2]

bool eic::BasicParticle::operator== ( const BasicParticle other) const
inline

◆ operator==() [2/2]

bool eic::BasicParticle::operator== ( const ConstBasicParticle other) const

◆ p() [1/3]

eic::VectorXYZ & eic::BasicParticle::p ( )

Get reference to momentum [GeV].

◆ p() [2/3]

const eic::VectorXYZ & eic::BasicParticle::p ( ) const

Access the momentum [GeV].

◆ p() [3/3]

void eic::BasicParticle::p ( eic::VectorXYZ  value)

Set the momentum [GeV].

◆ pid() [1/2]

const std::int32_t & eic::BasicParticle::pid ( ) const

Access the particle PDG code.

◆ pid() [2/2]

void eic::BasicParticle::pid ( std::int32_t  value)

Set the particle PDG code.

◆ status() [1/2]

const std::int16_t & eic::BasicParticle::status ( ) const

Access the Status code.

◆ status() [2/2]

void eic::BasicParticle::status ( std::int16_t  value)

Set the Status code.

◆ time() [1/2]

const float & eic::BasicParticle::time ( ) const

Access the Time in [ns].

◆ time() [2/2]

void eic::BasicParticle::time ( float  value)

Set the Time in [ns].

◆ unlink()

void eic::BasicParticle::unlink ( )
inline

disconnect from BasicParticleObj instance

◆ v() [1/3]

eic::VectorXYZ & eic::BasicParticle::v ( )

Get reference to vertex [mm].

◆ v() [2/3]

const eic::VectorXYZ & eic::BasicParticle::v ( ) const

Access the vertex [mm].

◆ v() [3/3]

void eic::BasicParticle::v ( eic::VectorXYZ  value)

Set the vertex [mm].

◆ weight() [1/3]

eic::Weight & eic::BasicParticle::weight ( )

Get reference to Particle weight, e.g. from PID algorithm [0-1].

◆ weight() [2/3]

const eic::Weight & eic::BasicParticle::weight ( ) const

Access the Particle weight, e.g. from PID algorithm [0-1].

◆ weight() [3/3]

void eic::BasicParticle::weight ( eic::Weight  value)

Set the Particle weight, e.g. from PID algorithm [0-1].

Friends And Related Function Documentation

◆ BasicParticleCollection

friend class BasicParticleCollection
friend

◆ BasicParticleCollectionIterator

friend class BasicParticleCollectionIterator
friend

◆ ConstBasicParticle

friend class ConstBasicParticle
friend

The documentation for this class was generated from the following files: