The Gaudi Framework  master (594c33fa)
Gaudi::Decays::Nodes::StableCharged Class Reference

#include </builds/gaudi/Gaudi/GaudiPartProp/include/Gaudi/Decays/NodesPIDs.h>

Inheritance diagram for Gaudi::Decays::Nodes::StableCharged:
Collaboration diagram for Gaudi::Decays::Nodes::StableCharged:

Public Member Functions

 StableCharged (const Gaudi::Interfaces::IParticlePropertySvc *svc=0)
 constructor service More...
 
StableChargedclone () const override
 MANDATORY: clone method ("virtual constructor") More...
 
bool operator() (const Gaudi::ParticleID &pid) const override
 MANDATORY: the only one essential method. More...
 
std::ostreamfillStream (std::ostream &s) const override
 MANDATORY: the specific printout. More...
 
- Public Member Functions inherited from Gaudi::Decays::Nodes::Stable
 Stable (const Gaudi::Interfaces::IParticlePropertySvc *svc=0)
 constructor service More...
 
- Public Member Functions inherited from Gaudi::Decays::Nodes::LongLived_
 LongLived_ (const double high, const Gaudi::Interfaces::IParticlePropertySvc *svc=0)
 constructor with high edge and service More...
 
 LongLived_ (const Gaudi::Interfaces::IParticlePropertySvc *svc=0)
 constructor service More...
 
- Public Member Functions inherited from Gaudi::Decays::Nodes::CTau
 CTau (const double low, const double high, const Gaudi::Interfaces::IParticlePropertySvc *svc=nullptr)
 constructor from c-tau range More...
 
bool valid () const override
 MANDATORY: check the validity. More...
 
StatusCode validate (const Gaudi::Interfaces::IParticlePropertySvc *svc) const override
 MANDATORY: the proper validation of the node. More...
 
const Gaudi::Interfaces::IParticlePropertySvcppSvc () const
 
double low () const
 get low edge More...
 
double high () const
 get high edge More...
 
StatusCode setService (const Gaudi::Interfaces::IParticlePropertySvc *svc) const
 
MsgStreamprintAcceptedAsTable (MsgStream &s) const
 
- Public Member Functions inherited from Gaudi::Decays::iNode
virtual bool operator! () const
 invalid node? More...
 
virtual std::string toString () const
 the string representation of the node More...
 
virtual ~iNode ()=default
 virtual destructor More...
 

Additional Inherited Members

- Protected Member Functions inherited from Gaudi::Decays::Nodes::CTau
template<typename F , typename = std::is_invocable_r<bool, F, Gaudi::ParticleID>>
bool classify (Gaudi::ParticleID pid, F &&f) const
 

Detailed Description

represent simple predicate for Stable+Charged particles

Author
Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl
Date
2009-05-11

Definition at line 538 of file NodesPIDs.h.

Constructor & Destructor Documentation

◆ StableCharged()

Gaudi::Decays::Nodes::StableCharged::StableCharged ( const Gaudi::Interfaces::IParticlePropertySvc svc = 0)

constructor service

Definition at line 392 of file NodePIDs.cpp.

393  : Decays::Nodes::Stable( svc ) {}

Member Function Documentation

◆ clone()

Decays::Nodes::StableCharged * Gaudi::Decays::Nodes::StableCharged::clone ( ) const
overridevirtual

MANDATORY: clone method ("virtual constructor")

Reimplemented from Gaudi::Decays::Nodes::Stable.

Definition at line 395 of file NodePIDs.cpp.

395  {
396  return new Decays::Nodes::StableCharged( *this );
397 }

◆ fillStream()

std::ostream & Gaudi::Decays::Nodes::StableCharged::fillStream ( std::ostream s) const
overridevirtual

MANDATORY: the specific printout.

Reimplemented from Gaudi::Decays::Nodes::Stable.

Definition at line 399 of file NodePIDs.cpp.

399 { return s << " StableCharged "; }

◆ operator()()

bool Gaudi::Decays::Nodes::StableCharged::operator() ( const Gaudi::ParticleID pid) const
overridevirtual

MANDATORY: the only one essential method.

Reimplemented from Gaudi::Decays::Nodes::CTau.

Definition at line 401 of file NodePIDs.cpp.

401  {
402  return classify( pid, [&]( Gaudi::ParticleID id ) {
403  // invalid node
404  if ( !ppSvc() ) { return false; } // REJECT for invalid service
405  // use the service
406  const Gaudi::ParticleProperty* pp = ppSvc()->find( id );
407  if ( !pp ) { return false; } // REJECT for invalid dparticle
408  // final decision: check ctau range
409  return low() <= pp->ctau() && 0 != id.threeCharge();
410  } );
411 }

The documentation for this class was generated from the following files:
gaudirun.s
string s
Definition: gaudirun.py:346
Gaudi::Decays::Nodes::CTau::classify
bool classify(Gaudi::ParticleID pid, F &&f) const
Definition: NodesPIDs.h:433
Gaudi::ParticleProperty
Definition: ParticleProperty.h:37
GaudiPartProp.Nodes.StableCharged
StableCharged
Definition: Nodes.py:309
Gaudi::Interfaces::IParticlePropertySvc::find
virtual const ParticleProperty * find(const std::string &name) const =0
Retrieve an object by name:
Gaudi::ParticleID
Definition: ParticleID.h:43
compareOutputFiles.pp
pp
Definition: compareOutputFiles.py:507
Gaudi::Decays::Nodes::CTau::low
double low() const
get low edge
Definition: NodesPIDs.h:425
Gaudi::Decays::Nodes::CTau::ppSvc
const Gaudi::Interfaces::IParticlePropertySvc * ppSvc() const
Definition: NodesPIDs.h:422
GaudiPartProp.Nodes.Stable
Stable
Definition: Nodes.py:308