AtomicTool.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #pragma once
  2. #include <Atomic/Engine/Application.h>
  3. using namespace Atomic;
  4. #include <ToolCore/Command/Command.h>
  5. using namespace ToolCore;
  6. namespace AtomicTool
  7. {
  8. class AtomicTool : public Application
  9. {
  10. OBJECT(AtomicTool);
  11. public:
  12. AtomicTool(Context* context);
  13. virtual ~AtomicTool();
  14. /// Setup before engine initialization. Verify that a script file has been specified.
  15. virtual void Setup();
  16. /// Setup after engine initialization. Load the script and execute its start function.
  17. virtual void Start();
  18. /// Cleanup after the main loop. Run the script's stop function if it exists.
  19. virtual void Stop();
  20. void ErrorExit(const String& message = String::EMPTY);
  21. private:
  22. void HandleLicenseEulaRequired(StringHash eventType, VariantMap& eventData);
  23. void HandleLicenseActivationRequired(StringHash eventType, VariantMap& eventData);
  24. void HandleLicenseSuccess(StringHash eventType, VariantMap& eventData);
  25. void HandleLicenseError(StringHash eventType, VariantMap& eventData);
  26. void HandleLicenseActivationError(StringHash eventType, VariantMap& eventData);
  27. void HandleLicenseActivationSuccess(StringHash eventType, VariantMap& eventData);
  28. void HandleLicenseDeactivationError(StringHash eventType, VariantMap& eventData);
  29. void HandleLicenseDeactivationSuccess(StringHash eventType, VariantMap& eventData);
  30. void HandleCommandFinished(StringHash eventType, VariantMap& eventData);
  31. void HandleCommandError(StringHash eventType, VariantMap& eventData);
  32. void DoActivation();
  33. void DoDeactivation();
  34. // use a variant map instead?
  35. String cliDataPath_;
  36. String activationKey_;
  37. bool deactivate_;
  38. SharedPtr<Command> command_;
  39. };
  40. }