| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IParticlePropertySvc.h
Go to the documentation of this file.
1 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiKernel/GaudiKernel/IParticlePropertySvc.h,v 1.4 2004/03/04 13:30:35 mato Exp $
2 #ifndef GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
3 #define GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
4
5 // Include Files
6 #include "GaudiKernel/IService.h"
7 #include <vector>
8
9 // Forward declarations.
10 class ParticleProperty;
11
19 class GAUDI_API IParticlePropertySvc: virtual public IService {
20
21 public:
23 DeclareInterfaceID(IParticlePropertySvc,3,0);
24
25 // Typedefs for container type
26 typedef std::vector<ParticleProperty*> VectPP;
27 typedef VectPP::const_iterator const_iterator;
28 typedef VectPP::iterator iterator;
29
41 virtual StatusCode push_back( const std::string& particle,
42 int geantId, int jetsetId,
43 double charge, double mass, double tlife ,
44 const std::string& evtName , int pythiaId ,
45 double maxWidth ) = 0;
46
51 virtual StatusCode push_back( ParticleProperty* pp ) = 0;
52
54 virtual const_iterator begin() const = 0;
55
57 virtual const_iterator end() const = 0;
58
60 virtual int size() const = 0;
61
63 virtual ParticleProperty* find( int geantId ) = 0;
64
66 virtual ParticleProperty* findByStdHepID( int stdHepID ) = 0;
67
69 virtual ParticleProperty* find( const std::string& name ) = 0;
70
72 virtual ParticleProperty* findByPythiaID( int pythiaID ) =0;
73
75 virtual StatusCode erase( int geantId ) = 0;
76
78 virtual StatusCode erase( const std::string& name ) = 0;
79
81 virtual StatusCode eraseByStdHepID( int stdHepID ) = 0;
82
84 virtual ~IParticlePropertySvc() {}
85 };
86
87 #endif
88
89