| # Gaudi Framework, version v21r8 |

Home |  | Generated: 17 Mar 2010

# IParticlePropertySvc.h

Go to the documentation of this file.

    00001 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiKernel/GaudiKernel/IParticlePropertySvc.h,v 1.4 2004/03/04 13:30:35 mato Exp $
    00002 #ifndef GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
    00003 #define GAUDIKERNEL_IPARTICLEPROPERTYSVC_H
    00004
    00005 // Include Files
    00006 #include "GaudiKernel/IService.h"
    00007 #include <vector>
    00008
    00009 // Forward declarations.
    00010 class ParticleProperty;
    00011
    00019 class GAUDI_API IParticlePropertySvc: virtual public IService {
    00020
    00021 public:
    00023   DeclareInterfaceID(IParticlePropertySvc,3,0);
    00024
    00025   // Typedefs for container type
    00026   typedef std::vector<ParticleProperty*> VectPP;
    00027   typedef VectPP::const_iterator         const_iterator;
    00028   typedef VectPP::iterator               iterator;
    00029
    00041   virtual StatusCode push_back( const std::string& particle,
    00042                                 int geantId, int jetsetId,
    00043                                 double charge, double mass, double tlife ,
    00044                                 const std::string& evtName , int pythiaId ,
    00045                                 double maxWidth ) = 0;
    00046
    00051   virtual StatusCode push_back( ParticleProperty* pp ) = 0;
    00052
    00054   virtual const_iterator begin() const = 0;
    00055
    00057   virtual const_iterator end() const = 0;
    00058
    00060   virtual int size() const = 0;
    00061
    00063   virtual ParticleProperty* find( int geantId ) = 0;
    00064
    00066   virtual ParticleProperty* findByStdHepID( int stdHepID ) = 0;
    00067
    00069   virtual ParticleProperty* find( const std::string& name ) = 0;
    00070
    00072   virtual ParticleProperty* findByPythiaID( int pythiaID ) =0;
    00073
    00075   virtual StatusCode erase( int geantId ) = 0;
    00076
    00078   virtual StatusCode erase( const std::string& name ) = 0;
    00079
    00081   virtual StatusCode eraseByStdHepID( int stdHepID ) = 0;
    00082
    00083 };
    00084
    00085 #endif
    00086
    00087