00001 #ifndef __XRDFRMMONITOR__ 00002 #define __XRDFRMMONITOR__ 00003 /******************************************************************************/ 00004 /* */ 00005 /* X r d F r m M o n i t o r . h h */ 00006 /* */ 00007 /* (c) 2010 by the Board of Trustees of the Leland Stanford, Jr., University */ 00008 /* All Rights Reserved */ 00009 /* Produced by Andrew Hanushevsky for Stanford University under contract */ 00010 /* DE-AC03-76-SFO0515 with the Department of Energy */ 00011 /******************************************************************************/ 00012 00013 // $Id: XrdFrmMonitor.hh 35287 2010-09-14 21:19:35Z ganis $ 00014 00015 #include <inttypes.h> 00016 #include <time.h> 00017 #include <netinet/in.h> 00018 #include <sys/types.h> 00019 00020 #include "XrdNet/XrdNetPeer.hh" 00021 #include "XrdXrootd/XrdXrootdMonData.hh" 00022 #include "XProtocol/XPtypes.hh" 00023 00024 /******************************************************************************/ 00025 /* X r d M o n i t o r */ 00026 /******************************************************************************/ 00027 00028 #define XROOTD_MON_INFO 1 00029 #define XROOTD_MON_STAGE 2 00030 00031 class XrdFrmMonitor 00032 { 00033 public: 00034 00035 static void Defaults(char *dest1, int m1, char *dest2, int m2); 00036 00037 static int Init(); 00038 00039 static kXR_unt32 Map(const char code,const char *uname,const char *path); 00040 00041 static char monSTAGE; 00042 00043 XrdFrmMonitor(); 00044 ~XrdFrmMonitor(); 00045 00046 private: 00047 static void fillHeader(XrdXrootdMonHeader *hdr, 00048 const char id, int size); 00049 static int Send(int mmode, void *buff, int size); 00050 00051 static char *Dest1; 00052 static int monMode1; 00053 static int monFD1; 00054 static struct sockaddr InetAddr1; 00055 static char *Dest2; 00056 static int monFD2; 00057 static int monMode2; 00058 static struct sockaddr InetAddr2; 00059 static kXR_int32 startTime; 00060 static int isEnabled; 00061 }; 00062 #endif