| The Gaudi Framework v32r1 (f65d50dc)

IParticlePropertySvc.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
2 #define GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
3
4 // Include Files
5 #include "GaudiKernel/IService.h"
6 #include <vector>
7
8 // Forward declarations.
9 class ParticleProperty;
10
18 class GAUDI_API IParticlePropertySvc : virtual public IService {
19
20 public:
22 DeclareInterfaceID( IParticlePropertySvc, 3, 0 );
23
24 // Typedefs for container type
25 typedef std::vector<ParticleProperty*> VectPP;
26 typedef VectPP::const_iterator const_iterator;
27 typedef VectPP::iterator iterator;
28
40 virtual StatusCode push_back( const std::string& particle, int geantId, int jetsetId, double charge, double mass,
41 double tlife, const std::string& evtName, int pythiaId, double maxWidth ) = 0;
42
47 virtual StatusCode push_back( ParticleProperty* pp ) = 0;
48
50 virtual const_iterator begin() const = 0;
51
53 virtual const_iterator end() const = 0;
54
56 virtual int size() const = 0;
57
59 virtual ParticleProperty* find( int geantId ) = 0;
60
62 virtual ParticleProperty* findByStdHepID( int stdHepID ) = 0;
63
65 virtual ParticleProperty* find( const std::string& name ) = 0;
66
68 virtual ParticleProperty* findByPythiaID( int pythiaID ) = 0;
69
71 virtual StatusCode erase( int geantId ) = 0;
72
74 virtual StatusCode erase( const std::string& name ) = 0;
75
77 virtual StatusCode eraseByStdHepID( int stdHepID ) = 0;
78 };
79
80 #endif
details::size
constexpr auto size(const T &, Args &&...) noexcept
Definition: AnyDataWrapper.h:14
IParticlePropertySvc::iterator
VectPP::iterator iterator
Definition: IParticlePropertySvc.h:27
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
ParticleProperty
A trivial class to hold information about a single particle properties.
Definition: ParticleProperty.h:18
IParticlePropertySvc::VectPP
std::vector< ParticleProperty * > VectPP
Definition: IParticlePropertySvc.h:25
Gaudi::Functional::details::details2::push_back
void push_back(Container &c, const Value &v, std::true_type)
Definition: FunctionalDetails.h:184
std::string
STL class.
IService
General service interface definition.
Definition: IService.h:18
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
IOTest.end
def end
Definition: IOTest.py:112
IService.h
std::vector
STL class.
IParticlePropertySvc
This class is an interface to the ParticlePropertySvc.
Definition: IParticlePropertySvc.h:18
compareOutputFiles.pp
pp
Definition: compareOutputFiles.py:495
IService::DeclareInterfaceID
DeclareInterfaceID(IService, 4, 0)
InterfaceID.
Gaudi::Utils::begin
AttribStringParser::Iterator begin(const AttribStringParser &parser)
Definition: AttribStringParser.h:120
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:71
IParticlePropertySvc::const_iterator
VectPP::const_iterator const_iterator
Definition: IParticlePropertySvc.h:26