FilmGrainComponent.h 1.4 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 <Atom/Feature/PostProcess/FilmGrain/FilmGrainConstants.h>
  10. #include <PostProcess/FilmGrain/FilmGrainComponentController.h>
  11. #include <AtomLyIntegration/CommonFeatures/PostProcess/FilmGrain/FilmGrainComponentConfig.h>
  12. #include <AzCore/Component/Component.h>
  13. #include <AzFramework/Components/ComponentAdapter.h>
  14. namespace AZ
  15. {
  16. namespace Render
  17. {
  18. namespace FilmGrain
  19. {
  20. static constexpr const char* const FilmGrainComponentTypeId = "{E2F5CF7E-3D25-41E4-B3BF-C8669494F7B4}";
  21. }
  22. class FilmGrainComponent final
  23. : public AzFramework::Components::ComponentAdapter<FilmGrainComponentController, FilmGrainComponentConfig>
  24. {
  25. public:
  26. using BaseClass = AzFramework::Components::ComponentAdapter<FilmGrainComponentController, FilmGrainComponentConfig>;
  27. AZ_COMPONENT(AZ::Render::FilmGrainComponent, FilmGrain::FilmGrainComponentTypeId, BaseClass);
  28. FilmGrainComponent() = default;
  29. FilmGrainComponent(const FilmGrainComponentConfig& config);
  30. static void Reflect(AZ::ReflectContext* context);
  31. };
  32. } // namespace Render
  33. } // namespace AZ