00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef XRDMONSNDTRACECACHE_HH
00014 #define XRDMONSNDTRACECACHE_HH
00015
00016 #include "XrdMon/XrdMonCommon.hh"
00017 #include "XrdMon/XrdMonSndDebug.hh"
00018 #include "XrdMon/XrdMonSndTraceEntry.hh"
00019 #include <vector>
00020 using std::vector;
00021
00022
00023
00024 class XrdMonSndTraceCache {
00025
00026 public:
00027 static const unsigned int PACKETSIZE;
00028 static const unsigned int NODATAELEMS;
00029
00030 XrdMonSndTraceCache();
00031
00032 bool bufferFull() const {
00033 return _entries.size() >= NODATAELEMS-3;
00034 }
00035
00036 int add(const XrdMonSndTraceEntry& de);
00037 const vector<XrdMonSndTraceEntry>& getVector() { return _entries; }
00038 void clear() { _entries.clear(); }
00039
00040 private:
00041 vector<XrdMonSndTraceEntry> _entries;
00042 };
00043
00044 #endif