Platform.h 582 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #pragma once
  2. #include <Atomic/Core/Object.h>
  3. using namespace Atomic;
  4. namespace ToolCore
  5. {
  6. class BuildBase;
  7. class Project;
  8. enum PlatformID
  9. {
  10. PLATFORMID_UNDEFINED,
  11. PLATFORMID_WINDOWS,
  12. PLATFORMID_MAC,
  13. PLATFORMID_ANDROID,
  14. PLATFORMID_IOS,
  15. PLATFORMID_WEB
  16. };
  17. class Platform : public Object
  18. {
  19. OBJECT(Platform);
  20. public:
  21. Platform(Context* context);
  22. virtual ~Platform();
  23. virtual String GetName() = 0;
  24. virtual PlatformID GetPlatformID() = 0;
  25. virtual BuildBase* NewBuild(Project* project) = 0;
  26. private:
  27. bool validLicense_;
  28. };
  29. }