PreviewRendererState.h 766 B

12345678910111213141516171819202122232425262728293031
  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. namespace AtomToolsFramework
  10. {
  11. class PreviewRenderer;
  12. //! PreviewRendererState is an interface for defining states that manages the logic flow of the PreviewRenderer
  13. class PreviewRendererState
  14. {
  15. public:
  16. explicit PreviewRendererState(PreviewRenderer* renderer)
  17. : m_renderer(renderer)
  18. {
  19. }
  20. virtual ~PreviewRendererState() = default;
  21. virtual void Update() = 0;
  22. protected:
  23. PreviewRenderer* m_renderer = {};
  24. };
  25. } // namespace AtomToolsFramework