PlatformAndroid.h 957 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #pragma once
  2. #include "Platform.h"
  3. #include "../Subprocess/Subprocess.h"
  4. namespace ToolCore
  5. {
  6. EVENT(E_ANDROIDTARGETSREFRESHED, AndroidTargetsRefreshed)
  7. {
  8. }
  9. class PlatformAndroid : public Platform
  10. {
  11. OBJECT(PlatformAndroid);
  12. struct AndroidTarget
  13. {
  14. unsigned id;
  15. };
  16. public:
  17. PlatformAndroid(Context* context);
  18. virtual ~PlatformAndroid();
  19. String GetName() { return "ANDROID"; }
  20. PlatformID GetPlatformID() { return PLATFORMID_ANDROID; }
  21. String GetAndroidCommand() const;
  22. void RefreshAndroidTargets();
  23. const Vector<String>& GetAndroidTargets() { return androidTargets_; }
  24. BuildBase* NewBuild(Project* project);
  25. private:
  26. void HandleRefreshAndroidTargetsEvent(StringHash eventType, VariantMap& eventData);
  27. SharedPtr<Subprocess> refreshAndroidTargetsProcess_;
  28. String targetOutput_;
  29. Vector<String> androidTargets_;
  30. void PrependAndroidCommandArgs(Vector<String> args);
  31. };
  32. }