An interface to define objects that can be exported using this component. More...
Public Member Functions | |
Exportable () noexcept | |
virtual | ~Exportable () |
virtual void | exportClassToTree (Node *rootNode)=0 |
virtual void | importClassFromTree (Node *rootNode)=0 |
An interface to define objects that can be exported using this component.
If need be, clients should inherit from this class and override the functions to import and export their object. This way, it will be possible to feed them to the Exporters.
|
noexcept |
Constructor.
|
virtual |
Destructor.
|
pure virtual |
Exports an item into a tree describing its structure and its data.
rootNode | The node into which the object has to write its related information. |
Implemented in nkAstraeus::PbsMaterial, nkWinUi::Component, nkGraphics::Texture, nkGraphics::Shader, nkGraphics::Camera, nkGraphics::Program, nkGraphics::Node, nkGraphics::ShaderPassMemorySlot, nkGraphics::TargetOperations, nkWinUi::GridLayout, nkGraphics::Mesh, nkGraphics::Sampler, nkGraphics::Buffer, nkGraphics::RenderQueue, nkGraphics::RasterState, nkGraphics::EntityRenderLodSlot, nkWinUi::ContextMenu, nkGraphics::EntityRenderInfo, nkGraphics::InstancingPass, nkGraphics::ShaderInstanceMemorySlot, nkGraphics::ClearTargetsPass, nkGraphics::Compositor, nkGraphics::CompositorNode, nkGraphics::RenderScenePass, nkGraphics::EntityRenderInfoSlot, nkGraphics::StreamOutputDescriptor, nkGraphics::RaytracingPass, nkScripts::Script, nkGraphics::Entity, nkAstraeus::Material, nkGraphics::PostProcessPass, nkGraphics::Pass, nkWinUi::Layout, nkGraphics::ComputePass, nkGraphics::ConstantBuffer, nkGraphics::Configuration, nkGraphics::ShaderMemorySlot, nkGraphics::MonoMaterialPass, nkGraphics::DepthStencilState, and nkGraphics::BlendState.
|
pure virtual |
Imports information from a tree which is supposed to describe its structure and data.
rootNode | The root node of the tree holding the information. |
Implemented in nkAstraeus::PbsMaterial, nkWinUi::Component, nkGraphics::Texture, nkGraphics::Shader, nkGraphics::Camera, nkGraphics::Program, nkWinUi::TreeView, nkGraphics::Node, nkGraphics::TargetOperations, nkGraphics::ShaderPassMemorySlot, nkWinUi::GridLayout, nkGraphics::Mesh, nkGraphics::Sampler, nkGraphics::Buffer, nkWinUi::ListBox, nkWinUi::TabWindow, nkGraphics::RenderQueue, nkWinUi::ComboBox, nkGraphics::RasterState, nkGraphics::EntityRenderLodSlot, nkWinUi::ContextMenu, nkGraphics::ShaderInstanceMemorySlot, nkGraphics::ClearTargetsPass, nkGraphics::EntityRenderInfo, nkGraphics::Compositor, nkGraphics::CompositorNode, nkGraphics::InstancingPass, nkWinUi::Slider, nkGraphics::RenderScenePass, nkGraphics::StreamOutputDescriptor, nkGraphics::RaytracingPass, nkWinUi::FileExplorer, nkGraphics::EntityRenderInfoSlot, nkWinUi::Window, nkScripts::Script, nkGraphics::Entity, nkWinUi::Layout, nkWinUi::Static, nkAstraeus::Material, nkGraphics::PostProcessPass, nkGraphics::Pass, nkWinUi::ImageDisplay, nkGraphics::ComputePass, nkWinUi::EditBox, nkGraphics::ConstantBuffer, nkWinUi::LogWin, nkGraphics::Configuration, nkGraphics::MonoMaterialPass, nkGraphics::DepthStencilState, and nkGraphics::BlendState.