Go to the documentation of this file.00001 #ifndef GAUDIKERNEL_IMONITORSVC_H
00002 #define GAUDIKERNEL_IMONITORSVC_H
00003
00004 #include "GaudiKernel/IInterface.h"
00005 #include <string>
00006 #include <set>
00007
00008
00009 namespace AIDA { class IBaseHistogram; }
00010 class StatEntity;
00011
00021 class GAUDI_API IMonitorSvc: virtual public IInterface {
00022 public:
00024 DeclareInterfaceID(IMonitorSvc,4,1);
00025
00033 virtual void declareInfo(const std::string& name, const bool& var, const std::string& desc, const IInterface* owner) = 0;
00034 virtual void declareInfo(const std::string& name, const int& var, const std::string& desc, const IInterface* owner) = 0;
00035 virtual void declareInfo(const std::string& name, const long& var, const std::string& desc, const IInterface* owner) = 0;
00036 virtual void declareInfo(const std::string& name, const double& var, const std::string& desc, const IInterface* owner) = 0;
00037 virtual void declareInfo(const std::string& name, const std::string& var, const std::string& desc, const IInterface* owner) = 0;
00038 virtual void declareInfo(const std::string& name, const std::pair<double,double>& var, const std::string& desc, const IInterface* owner) = 0;
00039 virtual void declareInfo(const std::string& name, const AIDA::IBaseHistogram* var, const std::string& desc, const IInterface* owner) = 0;
00040 virtual void declareInfo(const std::string& name, const StatEntity& var, const std::string& desc, const IInterface* owner) = 0;
00041 virtual void declareInfo(const std::string& name, const std::string& format, const void * var, int size, const std::string& desc, const IInterface* owner) = 0;
00042
00047 virtual void undeclareInfo( const std::string& name, const IInterface* owner ) = 0;
00051 virtual void undeclareAll( const IInterface* owner ) = 0;
00052
00057 virtual std::set<std::string>* getInfos(const IInterface* owner = 0) = 0;
00058
00059 };
00060
00061 #endif // GAUDIKERNEL_IMONITORSVC_H