Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

IFluxSvc.h

Go to the documentation of this file.
00001 // $Header: /nfs/slac/g/glast/ground/cvs/FluxSvc/FluxSvc/IFluxSvc.h,v 1.9 2001/10/20 07:21:11 srobinsn Exp $
00002 // 
00004 //
00005 
00006 #ifndef _H_IFluxSvc
00007 #define _H_IFluxSvc
00008 
00009 // includes
00010 #include "GaudiKernel/IInterface.h"
00011 #include <string>
00012 #include <list>
00013 #include "flux/SpectrumFactoryTable.h"
00014 
00015 // Declaration of the interface ID ( interface id, major version, minor version) 
00016 static const InterfaceID IID_IFluxSvc(910, 1 , 0); 
00017 
00018 // forward declarations
00019 class IFlux;
00020 class HepRandomEngine;
00021 
00023 class  IFluxSvc : virtual public IInterface {
00024 public:
00025     
00027     virtual  StatusCode source(std::string name, IFlux*&)=0;
00028     
00030     virtual std::list<std::string> fluxNames()const=0;
00031     
00033     virtual void addFactory(std::string name, const ISpectrumFactory* factory )=0;
00034     
00035     
00037     virtual HepRandomEngine* getEngine()=0;
00038     
00039     
00041     static const InterfaceID& interfaceID() { return IID_IFluxSvc; }
00042     
00043     
00044 };
00045 
00046 #endif  // _H_IFluxSvc

Generated at Wed Nov 21 12:20:10 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000