HDK
|
Syntax class for ESSL (OpenGL ES Shading Language) More...
#include <EsslSyntax.h>
Public Member Functions | |
EsslSyntax (TypeSystemPtr typeSystem) | |
![]() | |
GlslSyntax (TypeSystemPtr typeSystem) | |
const string & | getInputQualifier () const override |
const string & | getOutputQualifier () const override |
const string & | getConstantQualifier () const override |
const string & | getUniformQualifier () const override |
const string & | getSourceFileExtension () const override |
Return the file extension used for source code files in this language. More... | |
bool | typeSupported (const TypeDesc *type) const override |
bool | remapEnumeration (const string &value, TypeDesc type, const string &enumNames, std::pair< TypeDesc, ValuePtr > &result) const override |
StructTypeSyntaxPtr | createStructSyntax (const string &structTypeName, const string &defaultValue, const string &uniformDefaultValue, const string &typeAlias, const string &typeDefinition) const override |
![]() | |
virtual | ~Syntax () |
void | registerTypeSyntax (TypeDesc type, TypeSyntaxPtr syntax) |
void | registerTypeSyntax (const TypeDesc *type, TypeSyntaxPtr syntax) |
void | registerReservedWords (const StringSet &names) |
void | registerInvalidTokens (const StringMap &tokens) |
const StringSet & | getReservedWords () const |
Returns a set of names that are reserved words for this language syntax. More... | |
const StringMap & | getInvalidTokens () const |
Returns a mapping from disallowed tokens to replacement strings for this language syntax. More... | |
const TypeSyntax & | getTypeSyntax (TypeDesc type) const |
const TypeSyntax & | getTypeSyntax (const TypeDesc *type) const |
const vector< TypeSyntaxPtr > & | getTypeSyntaxes () const |
Returns an array of all registered type syntax objects. More... | |
TypeDesc | getType (const string &name) const |
Return a type description for the given type name. More... | |
const string & | getTypeName (TypeDesc type) const |
Returns the name syntax of the given type. More... | |
const string & | getTypeName (const TypeDesc *type) const |
virtual string | getOutputTypeName (TypeDesc type) const |
Returns the type name in an output context. More... | |
string | getOutputTypeName (const TypeDesc *type) const |
const string & | getTypeAlias (TypeDesc type) const |
const string & | getTypeAlias (const TypeDesc *type) const |
const string & | getTypeDefinition (TypeDesc type) const |
const string & | getTypeDefinition (const TypeDesc *type) const |
const string & | getDefaultValue (TypeDesc type, bool uniform=false) const |
Returns the default value string for the given type. More... | |
const string & | getDefaultValue (const TypeDesc *type, bool uniform=false) const |
virtual string | getValue (TypeDesc type, const Value &value, bool uniform=false) const |
Returns the value string for a given type and value object. More... | |
string | getValue (const TypeDesc *type, const Value &value, bool uniform=false) const |
virtual string | getValue (const ShaderPort *port, bool uniform=false) const |
Returns the value string for a given shader port object. More... | |
virtual const string & | getNewline () const |
Return the characters used for a newline. More... | |
virtual const string & | getIndentation () const |
Return the characters used for a single indentation level. More... | |
virtual const string & | getStringQuote () const |
Return the characters used to begin/end a string definition. More... | |
virtual const string & | getIncludeStatement () const |
Return the string pattern used for a file include statement. More... | |
virtual const string & | getSingleLineComment () const |
Return the characters used for single line comment. More... | |
virtual const string & | getBeginMultiLineComment () const |
Return the characters used to begin a multi line comments block. More... | |
virtual const string & | getEndMultiLineComment () const |
Return the characters used to end a multi line comments block. More... | |
virtual string | getArrayTypeSuffix (TypeDesc, const Value &) const |
Return the array suffix to use for declaring an array type. More... | |
string | getArrayTypeSuffix (const TypeDesc *type, const Value &value) const |
virtual string | getArrayVariableSuffix (TypeDesc type, const Value &value) const |
Return the array suffix to use for declaring an array variable. More... | |
string | getArrayVariableSuffix (const TypeDesc *type, const Value &value) const |
virtual void | makeValidName (string &name) const |
Modify the given name string to remove any invalid characters or tokens. More... | |
virtual void | makeIdentifier (string &name, IdentifierMap &identifiers) const |
virtual string | getVariableName (const string &name, TypeDesc type, IdentifierMap &identifiers) const |
string | getVariableName (const string &name, const TypeDesc *type, IdentifierMap &identifiers) const |
Static Public Member Functions | |
static SyntaxPtr | create (TypeSystemPtr typeSystem) |
![]() | |
static SyntaxPtr | create (TypeSystemPtr typeSystem) |
Additional Inherited Members | |
![]() | |
enum | Punctuation { PARENTHESES, CURLY_BRACKETS, SQUARE_BRACKETS, DOUBLE_SQUARE_BRACKETS } |
Punctuation types. More... | |
![]() | |
static const string | INPUT_QUALIFIER |
static const string | OUTPUT_QUALIFIER |
static const string | UNIFORM_QUALIFIER |
static const string | CONSTANT_QUALIFIER |
static const string | FLAT_QUALIFIER |
static const string | SOURCE_FILE_EXTENSION |
static const StringVec | VEC2_MEMBERS |
static const StringVec | VEC3_MEMBERS |
static const StringVec | VEC4_MEMBERS |
![]() | |
static const string | NEWLINE |
Constants with commonly used strings. More... | |
static const string | SEMICOLON |
static const string | COMMA |
![]() | |
Syntax (TypeSystemPtr typeSystem) | |
Protected constructor. More... | |
![]() | |
TypeSystemPtr | _typeSystem |
vector< TypeSyntaxPtr > | _typeSyntaxes |
std::unordered_map< TypeDesc, size_t, TypeDesc::Hasher > | _typeSyntaxIndexByType |
StringSet | _reservedWords |
StringMap | _invalidTokens |
![]() | |
static const string | INDENTATION |
static const string | STRING_QUOTE |
static const string | INCLUDE_STATEMENT |
static const string | SINGLE_LINE_COMMENT |
static const string | BEGIN_MULTI_LINE_COMMENT |
static const string | END_MULTI_LINE_COMMENT |
static const std::unordered_map< char, size_t > | CHANNELS_MAPPING |
Syntax class for ESSL (OpenGL ES Shading Language)
Definition at line 17 of file EsslSyntax.h.
EsslSyntax::EsslSyntax | ( | TypeSystemPtr | typeSystem | ) |
|
inlinestatic |
Definition at line 22 of file EsslSyntax.h.