00001 /*****************************************************************************/ 00002 /* */ 00003 /* XrdMonSndPacket.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: XrdMonSndPacket.hh 22437 2008-03-04 14:35:16Z rdm $ 00012 00013 #ifndef XRDMONSNDPACKET_HH 00014 #define XRDMONSNDPACKET_HH 00015 00016 #include "XrdMon/XrdMonCommon.hh" 00017 #include "XrdMon/XrdMonTypes.hh" 00018 00019 // an instance of the class describes a packet 00020 00021 class XrdMonSndPacket { 00022 public: 00023 XrdMonSndPacket(); 00024 XrdMonSndPacket(const XrdMonSndPacket& p); 00025 ~XrdMonSndPacket(); 00026 00027 kXR_int32 size() const { return _size; } 00028 const char* data() const { return _data; } 00029 00030 char* offset(kXR_int32 x) { return _data+x; } 00031 00032 int init(packetlen_t newSize); 00033 void reset(); 00034 00035 private: 00036 kXR_int32 _size; 00037 char* _data; 00038 }; 00039 00040 #endif /* XRDMONSNDPACKET_HH */