PacketFileLogger.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /*
  2. * Copyright (c) 2014, Oculus VR, Inc.
  3. * All rights reserved.
  4. *
  5. * This source code is licensed under the BSD-style license found in the
  6. * LICENSE file in the root directory of this source tree. An additional grant
  7. * of patent rights can be found in the PATENTS file in the same directory.
  8. *
  9. */
  10. #include "NativeFeatureIncludes.h"
  11. #if _RAKNET_SUPPORT_PacketLogger==1
  12. #include "PacketFileLogger.h"
  13. #include "GetTime.h"
  14. using namespace RakNet;
  15. PacketFileLogger::PacketFileLogger()
  16. {
  17. packetLogFile=0;
  18. }
  19. PacketFileLogger::~PacketFileLogger()
  20. {
  21. if (packetLogFile)
  22. {
  23. fflush(packetLogFile);
  24. fclose(packetLogFile);
  25. }
  26. }
  27. void PacketFileLogger::StartLog(const char *filenamePrefix)
  28. {
  29. // Open file for writing
  30. char filename[256];
  31. if (filenamePrefix)
  32. sprintf(filename, "%s_%i.csv", filenamePrefix, (int) RakNet::GetTimeMS());
  33. else
  34. sprintf(filename, "PacketLog_%i.csv", (int) RakNet::GetTimeMS());
  35. packetLogFile = fopen(filename, "wt");
  36. LogHeader();
  37. if (packetLogFile)
  38. {
  39. fflush(packetLogFile);
  40. }
  41. }
  42. void PacketFileLogger::WriteLog(const char *str)
  43. {
  44. if (packetLogFile)
  45. {
  46. fprintf(packetLogFile, "%s\n", str);
  47. fflush(packetLogFile);
  48. }
  49. }
  50. #endif // _RAKNET_SUPPORT_*
粤ICP备19079148号