3
0

AtlasBuilderComponent.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  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/Component/Component.h>
  10. #include <AssetBuilderSDK/AssetBuilderSDK.h>
  11. #include "AtlasBuilderWorker.h"
  12. namespace TextureAtlasBuilder
  13. {
  14. class AtlasBuilderComponent : public AZ::Component
  15. {
  16. public:
  17. AZ_COMPONENT(AtlasBuilderComponent, "{F49987FB-3375-4417-AB83-97B44C78B335}");
  18. AtlasBuilderComponent();
  19. ~AtlasBuilderComponent() override;
  20. void Init() override;
  21. void Activate() override;
  22. void Deactivate() override;
  23. //! Reflect formats for input and output
  24. static void Reflect(AZ::ReflectContext* context);
  25. static void GetProvidedServices(AZ::ComponentDescriptor::DependencyArrayType& provided);
  26. static void GetIncompatibleServices(AZ::ComponentDescriptor::DependencyArrayType& incompatible);
  27. static void GetRequiredServices(AZ::ComponentDescriptor::DependencyArrayType& required);
  28. static void GetDependentServices(AZ::ComponentDescriptor::DependencyArrayType& dependent);
  29. private:
  30. AtlasBuilderWorker m_atlasBuilder;
  31. };
  32. } // namespace TextureAtlasBuilder