Photon Engine 2.0.0-beta
A physically based renderer.
|
SDL binding type for a typical C++ struct. More...
#include <TSdlOwnerStruct.h>
Public Types | |
using | OwnerType = StructType |
Public Member Functions | |
TSdlOwnerStruct (std::string name) | |
void | initObject (AnyNonConstPtr obj, SdlInputClauses &clauses, const SdlInputContext &ctx) const override |
Initialize a struct object from value clauses. How the object will be initialized depends on the struct's SDL definition. | |
void | initDefaultObject (AnyNonConstPtr obj) const override |
Initialize a struct object to default values. Default values are defined by the struct's SDL definition. | |
void | saveObject (AnyConstPtr obj, SdlOutputClauses &clauses, const SdlOutputContext &ctx) const override |
void | referencedResources (AnyConstPtr obj, std::vector< const ISdlResource * > &out_resources) const override |
Get all SDL resources referenced by obj . | |
void | initDefaultStruct (StructType &structObj) const |
Initialize the struct object to default values. | |
std::size_t | numFields () const override |
const SdlField * | getField (std::size_t index) const override |
template<typename T > | |
TSdlOwnerStruct & | addField (T sdlField) |
template<typename StructObjType > | |
TSdlOwnerStruct & | addStruct (StructObjType StructType::*structObjPtr) |
template<typename StructObjType > | |
TSdlOwnerStruct & | addStruct (StructObjType StructType::*structObjPtr, const SdlStructFieldStump &structFieldStump) |
auto | getFields () const -> const TSdlBruteForceFieldSet< TSdlOwnedField< StructType > > & |
TSdlOwnerStruct & | description (std::string descriptionStr) |
template<typename T > | |
auto | addField (T sdlField) -> TSdlOwnerStruct & |
template<typename StructObjType > | |
auto | addStruct (StructObjType StructType::*const structObjPtr) -> TSdlOwnerStruct & |
template<typename StructObjType > | |
auto | addStruct (StructObjType StructType::*const structObjPtr, const SdlStructFieldStump &structFieldStump) -> TSdlOwnerStruct & |
Public Member Functions inherited from ph::SdlStruct | |
SdlStruct (std::string typeName) | |
std::string_view | getTypeName () const override |
std::string_view | getDescription () const override |
Public Member Functions inherited from ph::ISdlInstantiable | |
virtual | ~ISdlInstantiable ()=default |
Additional Inherited Members | |
Protected Member Functions inherited from ph::SdlStruct | |
SdlStruct & | setDescription (std::string description) |
SDL binding type for a typical C++ struct.
using ph::TSdlOwnerStruct< StructType >::OwnerType = StructType |
|
inlineexplicit |
TSdlOwnerStruct & ph::TSdlOwnerStruct< StructType >::addField | ( | T | sdlField | ) |
|
inline |
|
inline |
|
inline |
TSdlOwnerStruct & ph::TSdlOwnerStruct< StructType >::addStruct | ( | StructObjType StructType::* | structObjPtr | ) |
TSdlOwnerStruct & ph::TSdlOwnerStruct< StructType >::addStruct | ( | StructObjType StructType::* | structObjPtr, |
const SdlStructFieldStump & | structFieldStump ) |
|
inline |
|
inlineoverridevirtual |
index
. index
must <= numFields()
. Implements ph::SdlStruct.
|
inline |
|
inlineoverridevirtual |
Initialize a struct object to default values. Default values are defined by the struct's SDL definition.
Implements ph::SdlStruct.
|
inline |
Initialize the struct object to default values.
|
inlineoverridevirtual |
Initialize a struct object from value clauses. How the object will be initialized depends on the struct's SDL definition.
Implements ph::SdlStruct.
|
inlineoverridevirtual |
Implements ph::SdlStruct.
|
inlineoverridevirtual |
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. |
Implements ph::SdlStruct.
|
inlineoverridevirtual |
Implements ph::SdlStruct.