PlayerProtocol.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef __PLAYER_PROTOCOL_H_
  2. #define __PLAYER_PROTOCOL_H_
  3. #include "PlayerMacros.h"
  4. #include "PlayerSettings.h"
  5. #include "PlayerFileDialogServiceProtocol.h"
  6. #include "PlayerMessageBoxServiceProtocol.h"
  7. #include "PlayerMenuServiceProtocol.h"
  8. #include "PlayerEditBoxServiceProtocol.h"
  9. #include "PlayerTaskServiceProtocol.h"
  10. #include "ProjectConfig/ProjectConfig.h"
  11. #include "SimulatorExport.h"
  12. PLAYER_NS_BEGIN
  13. class CC_LIBSIM_DLL PlayerProtocol
  14. {
  15. public:
  16. virtual ~PlayerProtocol();
  17. static PlayerProtocol *getInstance();
  18. static void purgeInstance();
  19. void setPlayerSettings(const PlayerSettings &settings);
  20. PlayerSettings getPlayerSettings() const;
  21. virtual PlayerFileDialogServiceProtocol *getFileDialogService() = 0; // implemented in platform related source files
  22. virtual PlayerMessageBoxServiceProtocol *getMessageBoxService() = 0;
  23. virtual PlayerMenuServiceProtocol *getMenuService() = 0;
  24. virtual PlayerEditBoxServiceProtocol *getEditBoxService() = 0;
  25. virtual PlayerTaskServiceProtocol *getTaskService() = 0;
  26. protected:
  27. PlayerProtocol(); // avoid create instance from outside
  28. PlayerSettings _settings;
  29. private:
  30. static PlayerProtocol *_instance;
  31. };
  32. PLAYER_NS_END
  33. #endif // __PLAYER_PROTOCOL_H_