Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
ph::SdlFunction Class Referenceabstract

#include <SdlFunction.h>

Inheritance diagram for ph::SdlFunction:
ph::ISdlInstantiable ph::TSdlMethod< MethodStruct, TargetType >

Public Member Functions

 SdlFunction (std::string name)
 
virtual void call (ISdlResource *resource, SdlInputClauses &clauses, const SdlInputContext &ctx) const =0
 
virtual std::size_t numParams () const =0
 
virtual const SdlFieldgetParam (std::size_t index) const =0
 
std::size_t numFields () const override
 
const SdlFieldgetField (std::size_t index) const override
 
std::string_view getTypeName () const override
 
std::string_view getDescription () const override
 
std::string_view getName () const
 
std::string genPrettyName () const
 
- Public Member Functions inherited from ph::ISdlInstantiable
virtual ~ISdlInstantiable ()=default
 

Protected Member Functions

SdlFunctionsetDescription (std::string description)
 

Constructor & Destructor Documentation

◆ SdlFunction()

ph::SdlFunction::SdlFunction ( std::string name)
inlineexplicit

Member Function Documentation

◆ call()

virtual void ph::SdlFunction::call ( ISdlResource * resource,
SdlInputClauses & clauses,
const SdlInputContext & ctx ) const
pure virtual

◆ genPrettyName()

std::string ph::SdlFunction::genPrettyName ( ) const

◆ getDescription()

std::string_view ph::SdlFunction::getDescription ( ) const
inlineoverridevirtual
Returns
A description of this instantiable.

Implements ph::ISdlInstantiable.

◆ getField()

const SdlField * ph::SdlFunction::getField ( std::size_t index) const
inlineoverridevirtual
Returns
Field at index. index must <= numFields().

Implements ph::ISdlInstantiable.

◆ getName()

std::string_view ph::SdlFunction::getName ( ) const
inline
Returns
Function name.

◆ getParam()

virtual const SdlField * ph::SdlFunction::getParam ( std::size_t index) const
pure virtual

◆ getTypeName()

std::string_view ph::SdlFunction::getTypeName ( ) const
inlineoverridevirtual
Returns
Type name of this instantiable.

Implements ph::ISdlInstantiable.

◆ numFields()

std::size_t ph::SdlFunction::numFields ( ) const
inlineoverridevirtual
Returns
Number of fields in this instantiable.

Implements ph::ISdlInstantiable.

◆ numParams()

virtual std::size_t ph::SdlFunction::numParams ( ) const
pure virtual

◆ setDescription()

SdlFunction & ph::SdlFunction::setDescription ( std::string description)
inlineprotected

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