Class ShaderMetaReader
Implementation of shader meta functions reader
Namespace: ShaderProcessing
Assembly: FlaxEngine.dll
File: Engine/ShadersCompilation/Parser/ShaderFunctionReader.h
Syntax
public class ShaderMetaReader<MetaType> : public ShaderProcessing::IShaderFunctionReader, public ShaderProcessing::ITokenReadersContainer
Type Parameters
MetaType
|
Constructors
~ShaderMetaReader()
Declaration
protected ~ShaderMetaReader()
ShaderMetaReader()
Declaration
protected ShaderMetaReader()
Fields
_cache
Declaration
protected Array<MetaType> _cache
Field Value
Array<MetaType>
|
_current
Declaration
protected MetaType _current
Field Value
MetaType
|
Methods
CollectResults(IShaderParser* parser, ShaderMeta* result)
Collects shader function reader results to the final Shader Meta
Declaration
public virtual void CollectResults(IShaderParser* parser, ShaderMeta* result) override
Parameters
IShaderParser
parser
Parser object |
ShaderMeta
result
Parsing result |
Overrides
FlushCache(IShaderParser* parser, ShaderMeta* result)
Process final results and send them to the Shader Meta object
Declaration
protected virtual void FlushCache(IShaderParser* parser, ShaderMeta* result) = 0
Parameters
IShaderParser
parser
Parser object |
ShaderMeta
result
Output shader meta |
OnParse(IShaderParser* parser, Reader& text)
Event called for parsing shader function
Declaration
protected virtual void OnParse(IShaderParser* parser, Reader& text)
Parameters
IShaderParser
parser
Parser object |
Reader
text
Source code reader |
OnParseAfter(IShaderParser* parser, Reader& text)
Event called after parsing shader function
Declaration
protected virtual void OnParseAfter(IShaderParser* parser, Reader& text) = 0
Parameters
IShaderParser
parser
Parser object |
Reader
text
Source code reader |
OnParseBefore(IShaderParser* parser, Reader& text)
Event called before parsing shader function
Declaration
protected virtual void OnParseBefore(IShaderParser* parser, Reader& text) = 0
Parameters
IShaderParser
parser
Parser object |
Reader
text
Source code reader |
Process(IShaderParser* parser, Reader& text)
Start processing source after reading start token
Declaration
public virtual void Process(IShaderParser* parser, Reader& text) override
Parameters
IShaderParser
parser
Parser object |
Reader
text
Source code reader |