Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

IFluxSvc.h

Go to the documentation of this file.
00001 
00007 #ifndef _H_IFluxSvc
00008 #define _H_IFluxSvc
00009 
00019 // includes
00020 #include "GaudiKernel/IInterface.h"
00021 #include "CLHEP/Vector/Rotation.h"
00022 
00023 #include <string>
00024 #include <list>
00025 #include <vector>
00026 
00027 // Declaration of the interface ID ( interface id, major version, minor version) 
00028 static const InterfaceID IID_IFluxSvc(910, 2 , 0); 
00029 
00030 // forward declarations
00031 class IFlux;
00032 class IParticlePropertySvc;
00033 class ISpectrumFactory;
00034 
00036 class  IFluxSvc : virtual public IInterface {
00037 public:
00038     
00040     virtual  StatusCode source(std::string name, IFlux*&)=0;
00041     
00043     virtual std::list<std::string> fluxNames()const=0;
00044     
00046     virtual void addFactory(std::string name, const ISpectrumFactory* factory )=0;
00047     
00048     
00050     virtual void pass (double t)=0;    
00051     
00053     virtual void rootDisplay(std::vector<char*> arguments)=0;
00054     
00056     static const InterfaceID& interfaceID() { return IID_IFluxSvc; }
00057     
00059     virtual IFlux* currentFlux()=0;
00060     
00062     virtual std::string fluxName()const=0;
00063     
00065     virtual void setOrientation(std::pair<double,double> ang)=0;
00066 
00068     virtual std::pair<double,double> getOrientation()=0;
00069     
00070     
00072     virtual HepRotation transformGlastToGalactic(double time)const=0;
00073     
00075     virtual std::pair<double,double> location()=0;
00076 
00077     virtual void setRockType(int rockType)=0;
00079     virtual std::vector<std::pair< std::string ,std::list<std::string> > > sourceOriginList() const=0;
00080         
00081 };
00082 
00083 #endif  // _H_IFluxSvc

Generated on Wed Oct 16 14:01:30 2002 by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001