Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v36r16 (ea80daf8)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IParticlePropertySvc.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 #ifndef GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
12 #define GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
13 
14 // Include Files
15 #include "GaudiKernel/IService.h"
16 #include <vector>
17 
18 // Forward declarations.
19 class ParticleProperty;
20 
28 class GAUDI_API IParticlePropertySvc : virtual public IService {
29 
30 public:
33 
34  // Typedefs for container type
36  typedef VectPP::const_iterator const_iterator;
37  typedef VectPP::iterator iterator;
38 
50  virtual StatusCode push_back( const std::string& particle, int geantId, int jetsetId, double charge, double mass,
51  double tlife, const std::string& evtName, int pythiaId, double maxWidth ) = 0;
52 
58 
60  virtual const_iterator begin() const = 0;
61 
63  virtual const_iterator end() const = 0;
64 
66  virtual int size() const = 0;
67 
69  virtual ParticleProperty* find( int geantId ) = 0;
70 
72  virtual ParticleProperty* findByStdHepID( int stdHepID ) = 0;
73 
75  virtual ParticleProperty* find( const std::string& name ) = 0;
76 
78  virtual ParticleProperty* findByPythiaID( int pythiaID ) = 0;
79 
81  virtual StatusCode erase( int geantId ) = 0;
82 
84  virtual StatusCode erase( const std::string& name ) = 0;
85 
87  virtual StatusCode eraseByStdHepID( int stdHepID ) = 0;
88 };
89 
90 #endif
IService
Definition: IService.h:28
IParticlePropertySvc::eraseByStdHepID
virtual StatusCode eraseByStdHepID(int stdHepID)=0
Erase a property by StdHep id.
IService.h
std::string
STL class.
std::vector
STL class.
IParticlePropertySvc::size
virtual int size() const =0
Get the container size.
IParticlePropertySvc::begin
virtual const_iterator begin() const =0
Get a const reference to the begining of the container.
IParticlePropertySvc::find
virtual ParticleProperty * find(const std::string &name)=0
Retrieve an object by name.
IParticlePropertySvc::find
virtual ParticleProperty * find(int geantId)=0
Retrieve an object by geant3 id.
ParticleProperty
Definition: ParticleProperty.h:28
TimingHistograms.name
name
Definition: TimingHistograms.py:25
IParticlePropertySvc::const_iterator
VectPP::const_iterator const_iterator
Definition: IParticlePropertySvc.h:36
StatusCode
Definition: StatusCode.h:65
IParticlePropertySvc::findByPythiaID
virtual ParticleProperty * findByPythiaID(int pythiaID)=0
Retrieve an object by PythiaID.
IParticlePropertySvc::iterator
VectPP::iterator iterator
Definition: IParticlePropertySvc.h:37
IParticlePropertySvc::erase
virtual StatusCode erase(const std::string &name)=0
Erase a property by particle name.
IParticlePropertySvc
Definition: IParticlePropertySvc.h:28
IParticlePropertySvc::end
virtual const_iterator end() const =0
Get a const reference to the end of the container.
IParticlePropertySvc::DeclareInterfaceID
DeclareInterfaceID(IParticlePropertySvc, 3, 0)
InterfaceID.
IParticlePropertySvc::push_back
virtual StatusCode push_back(const std::string &particle, int geantId, int jetsetId, double charge, double mass, double tlife, const std::string &evtName, int pythiaId, double maxWidth)=0
Create a new particle property.
IParticlePropertySvc::VectPP
std::vector< ParticleProperty * > VectPP
Definition: IParticlePropertySvc.h:35
IParticlePropertySvc::findByStdHepID
virtual ParticleProperty * findByStdHepID(int stdHepID)=0
Retrieve an object by StdHep id.
compareOutputFiles.pp
pp
Definition: compareOutputFiles.py:516
IParticlePropertySvc::push_back
virtual StatusCode push_back(ParticleProperty *pp)=0
Create a new particle property.
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:81
IParticlePropertySvc::erase
virtual StatusCode erase(int geantId)=0
Erase a property by geant3 id.