• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

ThreadsafePacketLogger.cpp

Go to the documentation of this file.
00001 #include "NativeFeatureIncludes.h"
00002 #if _RAKNET_SUPPORT_PacketLogger==1
00003 
00004 #include "ThreadsafePacketLogger.h"
00005 #include <string.h>
00006 
00007 ThreadsafePacketLogger::ThreadsafePacketLogger()
00008 {
00009 
00010 }
00011 ThreadsafePacketLogger::~ThreadsafePacketLogger()
00012 {
00013         char **msg;
00014         while ((msg = logMessages.ReadLock()) != 0)
00015         {
00016                 rakFree_Ex((*msg), __FILE__, __LINE__ );
00017         }
00018 }
00019 void ThreadsafePacketLogger::Update(void)
00020 {
00021         char **msg;
00022         while ((msg = logMessages.ReadLock()) != 0)
00023         {
00024                 WriteLog(*msg);
00025                 rakFree_Ex((*msg), __FILE__, __LINE__ );
00026         }
00027 }
00028 void ThreadsafePacketLogger::AddToLog(const char *str)
00029 {
00030         char **msg = logMessages.WriteLock();
00031         *msg = (char*) rakMalloc_Ex( strlen(str)+1, __FILE__, __LINE__ );
00032         strcpy(*msg, str);
00033         logMessages.WriteUnlock();
00034 }
00035 
00036 #endif // _RAKNET_SUPPORT_*

Generated on Thu Sep 30 2010 01:27:28 for RakNet by  doxygen 1.7.1