PlatformAndroid.h 991 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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. String GetADBCommand() const;
  23. void RefreshAndroidTargets();
  24. const Vector<String>& GetAndroidTargets() { return androidTargets_; }
  25. BuildBase* NewBuild(Project* project);
  26. private:
  27. void HandleRefreshAndroidTargetsEvent(StringHash eventType, VariantMap& eventData);
  28. SharedPtr<Subprocess> refreshAndroidTargetsProcess_;
  29. String targetOutput_;
  30. Vector<String> androidTargets_;
  31. void PrependAndroidCommandArgs(Vector<String> args);
  32. };
  33. }