GNConfiguration.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. #include <AzCore/Memory/Memory.h>
  10. #include <AzCore/std/string/string.h>
  11. #include <GeomNodes/GeomNodesTypeIds.h>
  12. namespace AZ
  13. {
  14. class ReflectContext;
  15. }
  16. namespace GeomNodes
  17. {
  18. //! Configuration object that contains global data for GeomNodes System
  19. struct GNConfiguration
  20. {
  21. AZ_CLASS_ALLOCATOR_DECL;
  22. AZ_TYPE_INFO(GNConfiguration, GNConfigurationTypeId);
  23. static void Reflect(AZ::ReflectContext* context);
  24. static GNConfiguration CreateDefault();
  25. //! Blender executable path in user's machine.
  26. AZStd::string m_blenderPath;
  27. //! Last file path used when selecting a blender file.
  28. AZStd::string m_lastFilePath;
  29. bool operator==(const GNConfiguration& other) const;
  30. bool operator!=(const GNConfiguration& other) const;
  31. private:
  32. AZ::u32 OnBlenderPathChanged();
  33. };
  34. } // namespace GeomNodes