Photon Engine 2.0.0-beta
A physically based renderer.
|
#include <SdlStruct.h>
Public Member Functions | |
SdlStruct (std::string typeName) | |
virtual void | initObject (AnyNonConstPtr obj, SdlInputClauses &clauses, const SdlInputContext &ctx) const =0 |
Initialize a struct object from value clauses. How the object will be initialized depends on the struct's SDL definition. | |
virtual void | initDefaultObject (AnyNonConstPtr obj) const =0 |
Initialize a struct object to default values. Default values are defined by the struct's SDL definition. | |
virtual void | saveObject (AnyConstPtr obj, SdlOutputClauses &clauses, const SdlOutputContext &ctx) const =0 |
virtual void | referencedResources (AnyConstPtr obj, std::vector< const ISdlResource * > &out_resources) const =0 |
Get all SDL resources referenced by obj . | |
std::size_t | numFields () const override=0 |
const SdlField * | getField (std::size_t index) const override=0 |
std::string_view | getTypeName () const override |
std::string_view | getDescription () const override |
Public Member Functions inherited from ph::ISdlInstantiable | |
virtual | ~ISdlInstantiable ()=default |
Protected Member Functions | |
SdlStruct & | setDescription (std::string description) |
SDL struct is designed to be a simple grouped data carrier without the burden of inheritance and member functions for efficiency and ease of reuse.
TSdl
provides a simplified interface for initializing instances to default values.
|
explicit |
|
inlineoverridevirtual |
Implements ph::ISdlInstantiable.
|
overridepure virtual |
index
. index
must <= numFields()
. Implements ph::ISdlInstantiable.
Implemented in ph::TSdlOwnerStruct< StructType >.
|
inlineoverridevirtual |
Implements ph::ISdlInstantiable.
|
pure virtual |
Initialize a struct object to default values. Default values are defined by the struct's SDL definition.
Implemented in ph::TSdlOwnerStruct< StructType >.
|
pure virtual |
Initialize a struct object from value clauses. How the object will be initialized depends on the struct's SDL definition.
Implemented in ph::TSdlOwnerStruct< StructType >.
|
overridepure virtual |
Implements ph::ISdlInstantiable.
Implemented in ph::TSdlOwnerStruct< StructType >.
|
pure virtual |
Get all SDL resources referenced by obj
.
obj | The object that may contain SDL resources. |
out_resources | SDL resources referenced by obj . Never contains null. Appends to existing ones. |
Implemented in ph::TSdlOwnerStruct< StructType >.
|
pure virtual |
Implemented in ph::TSdlOwnerStruct< StructType >.
|
protected |