XrdMonHeader.hh

Go to the documentation of this file.
00001 /*****************************************************************************/
00002 /*                                                                           */
00003 /*                              XrdMonHeader.hh                              */
00004 /*                                                                           */
00005 /* (c) 2005 by the Board of Trustees of the Leland Stanford, Jr., University */
00006 /*                            All Rights Reserved                            */
00007 /*       Produced by Jacek Becla for Stanford University under contract      */
00008 /*              DE-AC02-76SF00515 with the Department of Energy              */
00009 /*****************************************************************************/
00010 
00011 // $Id: XrdMonHeader.hh 24468 2008-06-22 16:47:03Z ganis $
00012 
00013 #ifndef XRDMONHEADER_HH
00014 #define XRDMONHEADER_HH
00015 
00016 #include "XrdMon/XrdMonCommon.hh"
00017 #include "XrdMon/XrdMonTypes.hh"
00018 #include "XrdXrootd/XrdXrootdMonData.hh"
00019 #include "XrdSys/XrdSysHeaders.hh"
00020 
00021 #include <sys/time.h>
00022 #include <vector>
00023 using std::ostream;
00024 using std::vector;
00025 
00026 class XrdMonHeader {
00027 public:
00028     packet_t    packetType()  const { return _header.code; }
00029     sequen_t    seqNo()       const { return _header.pseq; }
00030     packetlen_t packetLen()   const { return _header.plen; }
00031     kXR_int32   stod()        const { return _header.stod; }
00032     bool        stodChanged(senderid_t senderId) const;
00033     
00034     void decode(const char* packet);
00035 
00036 private:
00037     XrdXrootdMonHeader _header;
00038 
00039     static vector<kXR_int32> _prevStod; // prevStod for each senderId
00040     
00041     friend ostream& operator<<(ostream& o, 
00042                                const XrdMonHeader& header);
00043 };
00044 
00045 #endif /* XRDMONHEADER_HH */
00046 

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