EAMainPrintManager.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. ///////////////////////////////////////////////////////////////////////////////
  2. // Copyright (c) Electronic Arts Inc. All rights reserved.
  3. ///////////////////////////////////////////////////////////////////////////////
  4. #ifndef EAMAIN_PRINTMANAGER_H
  5. #define EAMAIN_PRINTMANAGER_H
  6. #include <EABase/eabase.h>
  7. #include <EAMain/internal/Version.h>
  8. #define TO_STRING(x) #x
  9. #define MACRO_TO_STRING(x) TO_STRING(x)
  10. namespace EA
  11. {
  12. namespace EAMain
  13. {
  14. class IChannel;
  15. enum EAMainChannel
  16. {
  17. CHANNEL_PRINTF = 0,
  18. CHANNEL_NETWORK,
  19. CHANNEL_FILE,
  20. CHANNEL_MAX
  21. };
  22. class EAMAIN_API PrintManager
  23. {
  24. public:
  25. PrintManager();
  26. static PrintManager& Instance();
  27. void Startup(const char8_t* ServerIP);
  28. void Shutdown();
  29. void Send(const char8_t* pData);
  30. void Add(EAMainChannel channel, IChannel* instance);
  31. void Remove(EAMainChannel channel, IChannel* instance);
  32. void ClearChannel(EAMainChannel channel);
  33. private:
  34. IChannel* m_Channels[CHANNEL_MAX];
  35. };
  36. }}
  37. #endif // header include guard