ATLAS Offline Software
BPhysHelper.cxx File Reference
#include "xAODBPhys/BPhysHelper.h"
#include "xAODTracking/TrackParticle.h"
#include "xAODTracking/Vertex.h"
#include "xAODTracking/VertexContainer.h"
Include dependency graph for BPhysHelper.cxx:

Go to the source code of this file.

Macros

#define GET_PV(name)
 
#define SET_PV(name, pv, vertexContainer)
 
#define GET_FLOAT(name)
 
#define SET_FLOAT(name, val)
 
#define GET_INT(name)
 
#define SET_INT(name, val)
 

Typedefs

typedef ElementLink< xAOD::VertexContainerVertexLink
 
using VertexLinkVector = std::vector< VertexLink >
 
using MuonLink = ElementLink< xAOD::MuonContainer >
 
using MuonLinkVector = std::vector< MuonLink >
 
using ElectronLink = ElementLink< xAOD::ElectronContainer >
 
using ElectronLinkVector = std::vector< ElectronLink >
 

Detailed Description

Author
Daniel Scheirich danie.nosp@m.l.sc.nosp@m.heiri.nosp@m.ch@c.nosp@m.ern.c.nosp@m.h

Definition in file BPhysHelper.cxx.

Macro Definition Documentation

◆ GET_FLOAT

#define GET_FLOAT (   name)
Value:
{ \
static const SG::AuxElement::Accessor<float> floatAcc(name); \
if(!floatAcc.isAvailable(*m_b)) return -9999999.; \
return floatAcc(*m_b); \
}

Definition at line 72 of file BPhysHelper.cxx.

◆ GET_INT

#define GET_INT (   name)
Value:
{ \
static const SG::AuxElement::Accessor<int> intAcc(name); \
if(!intAcc.isAvailable(*m_b)) return -9999999; \
return intAcc(*m_b); \
}

Definition at line 86 of file BPhysHelper.cxx.

◆ GET_PV

#define GET_PV (   name)
Value:
{ \
static const SG::AuxElement::Accessor<VertexLink> pvLinkAcc(name); \
if(!pvLinkAcc.isAvailable(*m_b)) { \
return 0; \
} \
const VertexLink& pvLink = pvLinkAcc(*m_b); \
if(!pvLink.isValid()) { \
return 0; \
} \
return *pvLink; \
}

Some useful macros

Definition at line 46 of file BPhysHelper.cxx.

◆ SET_FLOAT

#define SET_FLOAT (   name,
  val 
)
Value:
{ \
static const SG::AuxElement::Decorator<float> floatDec(name); \
floatDec(*m_b) = val; \
return true; \
}

Definition at line 79 of file BPhysHelper.cxx.

◆ SET_INT

#define SET_INT (   name,
  val 
)
Value:
{ \
static const SG::AuxElement::Decorator<int> intDec(name); \
intDec(*m_b) = val; \
return true; \
}

Definition at line 93 of file BPhysHelper.cxx.

◆ SET_PV

#define SET_PV (   name,
  pv,
  vertexContainer 
)
Value:
{ \
static const SG::AuxElement::Decorator<VertexLink> pvLinkDecor(name); \
VertexLink vertexLink; \
if(pv) { \
vertexLink.setElement(pv); \
vertexLink.setStorableObject(*vertexContainer); \
if( !vertexLink.isValid() ) \
return false;} \
pvLinkDecor(*m_b) = vertexLink; \
return true; \
}

Definition at line 59 of file BPhysHelper.cxx.

Typedef Documentation

◆ ElectronLink

Definition at line 23 of file BPhysHelper.cxx.

◆ ElectronLinkVector

using ElectronLinkVector = std::vector<ElectronLink>

Definition at line 24 of file BPhysHelper.cxx.

◆ MuonLink

Definition at line 21 of file BPhysHelper.cxx.

◆ MuonLinkVector

using MuonLinkVector = std::vector<MuonLink>

Definition at line 22 of file BPhysHelper.cxx.

◆ VertexLink

Some useful typedefs

Definition at line 19 of file BPhysHelper.cxx.

◆ VertexLinkVector

using VertexLinkVector = std::vector<VertexLink>

Definition at line 20 of file BPhysHelper.cxx.

SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
SG::Decorator
Helper class to provide type-safe access to aux data.
Definition: Decorator.h:59
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
python.changerun.pv
pv
Definition: changerun.py:81