|
Bicameral Engine
GPU-resident engine for a magic-research open-world game
|
#include <lab_panel.h>
Public Member Functions | |
| LabPanel (ID3D12Device *device) | |
| void | Build () |
| void | StartAuto () |
| bool | AutoFailed () const |
Private Member Functions | |
| bool | CreateSession () |
| void | RunAuto () |
| void | BuildControls () |
| void | BuildStatus () |
| void | BuildSlice () |
| void | BuildCell () const |
| void | BuildRecording () |
| void | Report (const std::expected< void, std::string > &result) |
Private Attributes | |
| ComPtr< ID3D12Device5 > | m_device |
| std::optional< sim::LabSession > | m_session |
| std::vector< sim::LabMaterial > | m_materials |
| std::string | m_error |
| std::string | m_message |
| std::array< int, 3 > | m_cell = {3, 3, 3} |
| int | m_material = 1 |
| int | m_temperatureKelvin = 300 |
| bool | m_running = false |
| std::string | m_recordingPath = "lab_recording.blab" |
| bool | m_autoPending = false |
| bool | m_autoFailed = false |
Definition at line 25 of file lab_panel.h.
|
explicit |
Definition at line 46 of file lab_panel.cpp.
References m_device.
|
inlinenodiscard |
Definition at line 34 of file lab_panel.h.
References m_autoFailed.
| void bicameral::editor::LabPanel::Build | ( | ) |
Definition at line 90 of file lab_panel.cpp.
References BuildCell(), BuildControls(), BuildRecording(), BuildSlice(), BuildStatus(), CreateSession(), m_autoPending, m_error, m_running, m_session, Report(), and RunAuto().
|
private |
Definition at line 224 of file lab_panel.cpp.
References bicameral::sim::LabCellPosition::Index(), bicameral::sim::LabBoxCell(), m_cell, m_session, and bicameral::sim::BakedReactionTable::speciesNames.
Referenced by Build().
|
private |
Definition at line 146 of file lab_panel.cpp.
References bicameral::sim::LAB_BOX_EDGE, m_cell, m_error, m_material, m_materials, m_message, m_running, m_session, m_temperatureKelvin, and Report().
Referenced by Build().
|
private |
Definition at line 273 of file lab_panel.cpp.
References m_message, m_recordingPath, m_session, bicameral::sim::ParseLabRecording(), Report(), and bicameral::sim::SerializeLabRecording().
Referenced by Build().
|
private |
Definition at line 191 of file lab_panel.cpp.
References bicameral::sim::LAB_BOX_EDGE, bicameral::sim::LabBoxCell(), m_cell, and m_session.
Referenced by Build().
|
private |
Definition at line 123 of file lab_panel.cpp.
References m_error, and m_session.
Referenced by Build().
|
private |
Definition at line 51 of file lab_panel.cpp.
References bicameral::sim::BakeReactionTable(), bicameral::sim::LabSession::Create(), bicameral::Info, bicameral::Log(), m_device, m_error, m_material, m_materials, m_session, bicameral::sim::MakeCombustionTestTable(), bicameral::sim::MakeLabMaterials(), and bicameral::Sim.
Referenced by Build(), and RunAuto().
|
private |
Definition at line 77 of file lab_panel.cpp.
References bicameral::Error, bicameral::Log(), m_error, m_running, m_session, and bicameral::Sim.
Referenced by Build(), BuildControls(), and BuildRecording().
|
private |
Definition at line 308 of file lab_panel.cpp.
References CreateSession(), bicameral::Error, bicameral::sim::LabRecording::hashes, bicameral::Info, bicameral::Log(), m_autoFailed, m_cell, m_error, m_materials, m_session, bicameral::sim::LabMaterial::name, bicameral::sim::ParseLabRecording(), bicameral::sim::SerializeLabRecording(), and bicameral::Sim.
Referenced by Build().
|
inline |
Definition at line 33 of file lab_panel.h.
References m_autoPending.
|
private |
Definition at line 61 of file lab_panel.h.
Referenced by AutoFailed(), and RunAuto().
|
private |
Definition at line 60 of file lab_panel.h.
Referenced by Build(), and StartAuto().
|
private |
Definition at line 54 of file lab_panel.h.
Referenced by BuildCell(), BuildControls(), BuildSlice(), and RunAuto().
|
private |
Definition at line 47 of file lab_panel.h.
Referenced by CreateSession(), and LabPanel().
|
private |
Definition at line 50 of file lab_panel.h.
Referenced by Build(), BuildControls(), BuildStatus(), CreateSession(), Report(), and RunAuto().
|
private |
Definition at line 55 of file lab_panel.h.
Referenced by BuildControls(), and CreateSession().
|
private |
Definition at line 49 of file lab_panel.h.
Referenced by BuildControls(), CreateSession(), and RunAuto().
|
private |
Definition at line 51 of file lab_panel.h.
Referenced by BuildControls(), and BuildRecording().
|
private |
Definition at line 58 of file lab_panel.h.
Referenced by BuildRecording().
|
private |
Definition at line 57 of file lab_panel.h.
Referenced by Build(), BuildControls(), and Report().
|
private |
Definition at line 48 of file lab_panel.h.
Referenced by Build(), BuildCell(), BuildControls(), BuildRecording(), BuildSlice(), BuildStatus(), CreateSession(), Report(), and RunAuto().
|
private |
Definition at line 56 of file lab_panel.h.
Referenced by BuildControls().