XrdClientAbsMonIntf.hh

Go to the documentation of this file.
00001 #ifndef __XRDCLIABSMONINTF_H__
00002 #define __XRDCLIABSMONINTF_H__
00003 
00004 // XrdClientAbsMonIntf
00005 // Public interface to generic monitoring systems
00006 //
00007   
00008 //       $Id: XrdClientAbsMonIntf.hh 24468 2008-06-22 16:47:03Z ganis $
00009 
00010 class XrdClientAbsMonIntf {
00011 public:
00012 
00013 
00014   // Initialization of the external library
00015   virtual int Init(const char *src, const char *dest, int debug=0, void *parm=0) = 0;
00016   virtual int DeInit() = 0;
00017 
00018   // To get the name of the library and other info
00019   virtual int GetMonLibInfo(char **name, char **version, char **remarks) = 0;
00020 
00021 
00022   // To submit a set of info about the progress of something
00023   // Set force to true to be sure that the info is sent and not eventually skipped
00024   virtual int PutProgressInfo(long long bytecount=0,
00025                               long long size=0,
00026                               float percentage=0.0,
00027                               bool force=false) = 0;
00028 
00029 
00030   XrdClientAbsMonIntf() {};
00031   virtual ~XrdClientAbsMonIntf() {};
00032 };
00033 
00034 
00035 
00036 
00037 /******************************************************************************/
00038 /*                X r d C l i e n t A b s M o n I n t f . h  h               */
00039 /******************************************************************************/
00040   
00041 // The XrdClientMonIntf() function is called when the shared library containing
00042 // implementation of this class is loaded. It must exist in the library as an
00043 // 'extern "C"' defined function.
00044 
00045 
00046 #define XrdClientMonIntfArgs const char *src, const char *dst
00047 
00048 extern "C" {
00049   typedef XrdClientAbsMonIntf *(*XrdClientMonIntfHook)(XrdClientMonIntfArgs);
00050 XrdClientAbsMonIntf *XrdClientgetMonIntf(XrdClientMonIntfArgs);
00051 }
00052 
00053 
00054 
00055 
00056 #endif

Generated on Tue Jul 5 14:46:16 2011 for ROOT_528-00b_version by  doxygen 1.5.1