185 secondaryDecayLink, setSecondaryDecayLink )
190 if( !
acc.isAvailable( *
this ) ) {
203 trackParticleLinks, setTrackParticleLinks )
211 if( !
trackAcc.isAvailable( *
this ) ) {
219 if( !
trackAcc.isAvailable( *
this ) ) {
238 const double epsilon = 1
e-5;
242 if((aHasSD+bHasSD)==1)
253 if(fabs(
eta()-rhs.
eta())>epsilon)
return false;
254 if(fabs(
phi()-rhs.
phi())>epsilon)
return false;
255 if(fabs(
pt()*0.001-rhs.
pt()*0.001)>epsilon)
return false;
256 if(fabs(
mass()*0.001-rhs.
mass()*0.001)>epsilon)
return false;
259 if(fabs(
fitx()-rhs.
fitx())>epsilon)
return false;
260 if(fabs(
fity()-rhs.
fity())>epsilon)
return false;
261 if(fabs(
fitz()-rhs.
fitz())>epsilon)
return false;
263 if((aHasSD+bHasSD)==2)
275 lowerChainLink, setLowerChainLink )
280 if( !
acc.isAvailable( *
this ) ) {
292 std::vector< ElementLink< IParticleContainer > >,
293 particleLinks, setParticleLinks )
297 particleAcc(
"particleLinks" );
301 if( ! particleAcc.isAvailable( *
this ) ) {
304 return particleAcc( *this ).size();
309 if( ! particleAcc.isAvailable( *
this ) ) {
315 if( ! particleAcc( *
this )[ i ].
isValid() ) {
318 return *( particleAcc( *
this )[ i ] );
323 particleAcc( *this ).push_back(
particle );
329 std::vector< uint32_t >,
330 vecRoiIds, setVecRoiIds )
334 vRoiAcc(
"vecRoiIds" );
338 if( ! vRoiAcc.isAvailable( *
this ) ) {
341 return vRoiAcc( *this ).size();
346 if( ! vRoiAcc.isAvailable( *
this ) ) {
352 return vRoiAcc( *
this )[ i ];
357 vRoiAcc( *this ).push_back(
roiId );
368 return ptAcc( *
this );
388 return lxyAcc.isAvailable(*
this) ?
lxyAcc(*
this) : -99.;
394 return tauAcc.isAvailable(*
this) ?
tauAcc(*
this) : -99.;
Scalar eta() const
pseudorapidity method
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
#define AUXSTORE_PRIMITIVE_GETTER_WITH_CAST(CL, PERSTYPE, TRANSTYPE, NAME)
Macro creating a getter function with a type conversion.
#define AUXSTORE_PRIMITIVE_SETTER_WITH_CAST(CL, PERSTYPE, TRANSTYPE, NAME, SETTER)
Macro creating a setter function with a type conversion.
#define AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of primitive auxiliary properties.
#define AUXSTORE_OBJECT_SETTER_AND_GETTER(CL, TYPE, NAME, SETTER)
Macro creating the accessors of complex auxiliary properties.
ElementLink implementation for ROOT usage.
SG::Accessor< T, ALLOC > Accessor
AuxElement()
Default constructor.
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
Class providing the definition of the 4-vector interface.
Class describing a Bphysics online composite object.
int fitndof() const
accessor method: ndof from vertex fit
void setPhi(float)
Set the azimuth angle of the object.
float tau() const
accessor method: tau
void setFitchi2(float FitChi2)
set method: chi2 from vertex fit
size_t nTrackParticles() const
Number of tracks used to make particle.
void setTau(float v)
set method: tau
void setParticleType(pType type)
set method: particle type
void addParticleLink(const ElementLink< xAOD::IParticleContainer > &particle)
add a track to the vector of particles
void addTrackParticleLink(const ElementLink< xAOD::TrackParticleContainer > &track)
set method: add track to particle
float pt() const
accessor method: pt
void setFitx(float FitX)
set method: x position of vertex
uint32_t roiId() const
accessor method: ID of L1 RoI
void setFity(float FitY)
set method: y position of vertex
uint32_t vecRoiId(size_t i) const
Get the Nth roiId.
void setRoiId(uint32_t id)
set method: roiId
float eta() const
accessor method: eta
pType particleType() const
accessor method: particle Type
float tauError() const
accessor method: tau uncertainty
const ElementLink< TrigBphysContainer_v1 > & lowerChainLink() const
accessor method: lowerChain decay particle
size_t nParticles() const
Number of tracks used to make particle.
void setSecondaryDecayLink(const ElementLink< xAOD::TrigBphysContainer_v1 > &link)
set method: link to secondary decay particle
const TrigBphys_v1 * secondaryDecay() const
accessor method: secondary decay particle
const xAOD::TrackParticle * trackParticle(size_t i) const
Get the Nth track's pointer.
void addVecRoiId(uint32_t roiId)
add a roiId to the vector
void setParticleLinks(const std::vector< ElementLink< IParticleContainer > > &links)
Set the track particle links on the object.
float phi() const
accessor method: phi
const std::vector< ElementLink< xAOD::IParticleContainer > > & particleLinks() const
accessor method:vector of tracks used to make particle
levelType
enum to describe the level this object is operating at
float fitchi2() const
accessor method: chi2 from vertex fit
void setFitndof(int FitNdof)
set method: ndof from vertex fit
void setVecRoiIds(const std::vector< uint32_t > &roiIds)
Set the track particle links on the object.
void setFitz(float FitZ)
set method: z position of vertex
const TrigBphys_v1 * lowerChain() const
accessor method: lowerChain decay particle
float lxy() const
accessor method: lxy
void clone(const TrigBphys_v1 &rhs)
const ElementLink< TrigBphysContainer_v1 > & secondaryDecayLink() const
accessor method: secondary decay particle
void setTauError(float v)
set method: tauError
float fitx() const
accessor method: x position of vertex
void setPt(float)
Set the pT of the object.
void setLxy(float v)
set method: lxy
void setFitmass(float FitMass)
set method: mass from vertex fit
size_t nVecRoiIds() const
Number of tracks used to make particle.
void setFitmassError(float v)
set method: fitmassError
float fitz() const
accessor method: z position of vertex
float fitmass() const
accessor method: mass from vertex fit
void setLevel(levelType type)
set method: level type
const std::vector< ElementLink< xAOD::TrackParticleContainer > > & trackParticleLinks() const
accessor method:vector of tracks used to make particle
float lxyError() const
accessor method: lxy uncertainty
const std::vector< uint32_t > & vecRoiIds() const
accessor method:vector of tracks used to make particle
float mass() const
accessor method: mass
float fitmassError() const
accessor method: fitmass uncertainty
void setEta(float)
Set the pseudorapidity of the object.
const xAOD::IParticle * particle(size_t i) const
Get the Nth track's pointer.
void setMass(float)
Set the mass of the object.
pType
enum for different particle types
TrigBphys_v1()
Default constructor.
float fity() const
accessor method: y position of vertex
levelType level() const
accessor method: level Type
void setTrackParticleLinks(const std::vector< ElementLink< TrackParticleContainer > > &links)
Set the track particle links on the object.
void setLowerChainLink(const ElementLink< xAOD::TrigBphysContainer_v1 > &link)
set method: link to lowerChain decay particle
void setLxyError(float v)
set method: lxyError
bool operator==(const TrigBphys_v1 &rhs) const
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
static const SG::AuxElement::Accessor< float > tauErrorAcc("tauError")
setStrategy setMatchFlag ElementLink< TrackParticleContainer >
static const SG::AuxElement::Accessor< Vertex_v1::TrackParticleLinks_t > trackAcc("trackParticleLinks")
Accessor for the track links.
static const SG::AuxElement::Accessor< float > fitmassErrorAcc("fitmassError")
TrackParticle_v1 TrackParticle
Reference the current persistent version:
static const SG::AuxElement::Accessor< float > lxyAcc("lxy")
static const SG::AuxElement::Accessor< float > tauAcc("tau")
static const SG::AuxElement::Accessor< ElementLink< IParticleContainer > > acc("originalObjectLink")
Object used for setting/getting the dynamic decoration in question.
static const SG::AuxElement::Accessor< float > lxyErrorAcc("lxyError")
setTeId setLumiBlock roiId