SpiecsEngine
 
Loading...
Searching...
No Matches
ImguiStatistics.h
Go to the documentation of this file.
1/**
2* @file ImguiStatistics.h
3* @brief The ImguiStatistics Class Definitions.
4* @author Spices.
5*/
6
7#pragma once
8#include "Core/Core.h"
9#include "Slate/Imgui/ImguiUtils.h"
10
11namespace Spices {
12
13 /**
14 * @brief Forward Declare.
15 */
19
20 /*
21 * @brief The ImguiStatistics Class.
22 * This class defines how to render Debugger Panel.
23 */
25 {
26 public:
27
28 /**
29 * @brief Constructor Function.
30 * @param[in] panelName The Slate's name to show.
31 * @param[in] frameInfo The Frame Date that in use.
32 */
34 const std::string& panelName,
35 FrameInfo& frameInfo
36 );
37
38 /**
39 * @brief Destructor Function.
40 */
41 virtual ~ImguiStatistics() override = default;
42
43 /**
44 * @brief This interface is called On SlateSystem Update.
45 * @param[in] ts TimeStep.
46 */
47 virtual void OnUpdate(TimeStep& ts) override {}
48
49 /**
50 * @brief This interface is called On SlateRenderer Render.
51 */
52 virtual void OnRender() override;
53
54 /**
55 * @brief This interface is called on global event function pointer execute.
56 * @param[in] event Event.
57 */
58 virtual void OnEvent(Event& event) override {};
59
60 private:
61
62 /**
63 * @brief The shared pointer of ImguiVideoMemoryRuntimeHUD.
64 */
66
67 /**
68 * @brief The shared pointer of ImguiGPURuntimeProfilerHUD.
69 */
71
72 /**
73 * @brief The shared pointer of ImguiRendererProfilerHUD.
74 */
76 };
77}
#define ICON_TEXT(icon, text)
Definition ImguiHelper.h:24
#define ICON_EMPTY
Definition ImguiHelper.h:26
#define SPICES_PROFILE_ZONE
This Class is the basic Event Class. Inherit from it and create specific event class.
Definition Event.h:96
FrameInfo Class. This class defines the FrameInfo data.
Definition FrameInfo.h:32
ImguiSlate(const std::string &panelName, FrameInfo &frameInfo)
Constructor Function. Init with Slate's name.
Definition ImguiUtils.h:35
std::string m_PanelName
This slate's name.
Definition ImguiUtils.h:161
This Class defines the basic behaves of specific slate. When we add an new Slate, we need inherit fro...
Definition ImguiUtils.h:27
std::shared_ptr< ImguiGPURuntimeProfilerHUD > m_ImguiGPURuntimeProfilerHUD
The shared pointer of ImguiGPURuntimeProfilerHUD.
std::shared_ptr< ImguiVideoMemoryRuntimeHUD > m_ImguiVideoMemoryRuntimeHUD
The shared pointer of ImguiVideoMemoryRuntimeHUD.
virtual void OnEvent(Event &event) override
This interface is called on global event function pointer execute.
ImguiStatistics(const std::string &panelName, FrameInfo &frameInfo)
Constructor Function.
virtual void OnRender() override
This interface is called On SlateRenderer Render.
std::shared_ptr< ImguiRendererProfilerHUD > m_ImguiRendererProfilerHUD
The shared pointer of ImguiRendererProfilerHUD.
virtual void OnUpdate(TimeStep &ts) override
This interface is called On SlateSystem Update.
virtual ~ImguiStatistics() override=default
Destructor Function.
virtual void OnRender() override
This interface is called On SlateRenderer Render.
ImguiUtilities(const std::string &panelName, FrameInfo &frameInfo)
Constructor Function.
The ImguiUtilities Class. This class defines how to render a Utilities.
This Class handles our engine time step during frames. Global Unique.
Definition TimeStep.h:22