Olympe Engine 2.0
2D Game Engine with ECS Architecture
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Olympe::AI::BlackboardPanel Class Reference

Full-featured ImGui panel for editing BlackboardSystem variables. More...

#include <BlackboardPanel.h>

+ Collaboration diagram for Olympe::AI::BlackboardPanel:

Public Member Functions

 BlackboardPanel ()
 
 ~BlackboardPanel ()=default
 
void Render (NodeGraph::BlackboardSystem *blackboard, bool *pOpen=nullptr)
 Render the panel.
 

Private Member Functions

void RenderEntryList (NodeGraph::BlackboardSystem *blackboard)
 
void RenderAddDialog (NodeGraph::BlackboardSystem *blackboard)
 
void RenderEditPopup (NodeGraph::BlackboardSystem *blackboard)
 

Private Attributes

bool m_showAddDialog
 
bool m_showEditPopup
 
char m_newEntryName [256]
 
int m_newEntryTypeIndex
 
std::string m_editTargetName
 
NodeGraph::BlackboardValue m_editBuffer
 
char m_editStringBuf [1024]
 
char m_renameBuffer [256]
 

Detailed Description

Full-featured ImGui panel for editing BlackboardSystem variables.

Allows listing, creating, editing, and deleting blackboard entries. All types (Int, Float, Bool, String, Vector3) are supported with appropriate widgets.

Definition at line 25 of file BlackboardPanel.h.

Constructor & Destructor Documentation

◆ BlackboardPanel()

Olympe::AI::BlackboardPanel::BlackboardPanel ( )

Definition at line 21 of file BlackboardPanel.cpp.

References m_editStringBuf, m_newEntryName, and m_renameBuffer.

◆ ~BlackboardPanel()

Olympe::AI::BlackboardPanel::~BlackboardPanel ( )
default

Member Function Documentation

◆ Render()

void Olympe::AI::BlackboardPanel::Render ( NodeGraph::BlackboardSystem blackboard,
bool pOpen = nullptr 
)

Render the panel.

Parameters
blackboardBlackboard system to display/edit
pOpenPointer to visibility flag (nullptr = always visible)

Definition at line 35 of file BlackboardPanel.cpp.

References GetComponentTypeID_Static(), m_editBuffer, m_editStringBuf, m_newEntryName, m_newEntryTypeIndex, m_showAddDialog, m_showEditPopup, RenderAddDialog(), RenderEditPopup(), and RenderEntryList().

Referenced by Olympe::AI::AIEditorGUI::RenderBlackboardPanel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RenderAddDialog()

void Olympe::AI::BlackboardPanel::RenderAddDialog ( NodeGraph::BlackboardSystem blackboard)
private

◆ RenderEditPopup()

void Olympe::AI::BlackboardPanel::RenderEditPopup ( NodeGraph::BlackboardSystem blackboard)
private

◆ RenderEntryList()

void Olympe::AI::BlackboardPanel::RenderEntryList ( NodeGraph::BlackboardSystem blackboard)
private

Definition at line 86 of file BlackboardPanel.cpp.

References GetComponentTypeID_Static(), m_editBuffer, m_editStringBuf, m_editTargetName, m_renameBuffer, m_showEditPopup, Olympe::AI::s_typeCount, and Olympe::AI::s_typeNames.

Referenced by Render().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_editBuffer

NodeGraph::BlackboardValue Olympe::AI::BlackboardPanel::m_editBuffer
private

Definition at line 49 of file BlackboardPanel.h.

Referenced by Render(), RenderAddDialog(), RenderEditPopup(), and RenderEntryList().

◆ m_editStringBuf

char Olympe::AI::BlackboardPanel::m_editStringBuf[1024]
private

◆ m_editTargetName

std::string Olympe::AI::BlackboardPanel::m_editTargetName
private

Definition at line 46 of file BlackboardPanel.h.

Referenced by RenderEditPopup(), and RenderEntryList().

◆ m_newEntryName

char Olympe::AI::BlackboardPanel::m_newEntryName[256]
private

Definition at line 44 of file BlackboardPanel.h.

Referenced by BlackboardPanel(), Render(), and RenderAddDialog().

◆ m_newEntryTypeIndex

int Olympe::AI::BlackboardPanel::m_newEntryTypeIndex
private

Definition at line 45 of file BlackboardPanel.h.

Referenced by Render(), and RenderAddDialog().

◆ m_renameBuffer

char Olympe::AI::BlackboardPanel::m_renameBuffer[256]
private

Definition at line 51 of file BlackboardPanel.h.

Referenced by BlackboardPanel(), RenderEditPopup(), and RenderEntryList().

◆ m_showAddDialog

bool Olympe::AI::BlackboardPanel::m_showAddDialog
private

Definition at line 42 of file BlackboardPanel.h.

Referenced by Render(), and RenderAddDialog().

◆ m_showEditPopup

bool Olympe::AI::BlackboardPanel::m_showEditPopup
private

Definition at line 43 of file BlackboardPanel.h.

Referenced by Render(), RenderEditPopup(), and RenderEntryList().


The documentation for this class was generated from the following files: