6#ifndef MATERIALX_GLSL_SYNTAX_H
7#define MATERIALX_GLSL_SYNTAX_H
16MATERIALX_NAMESPACE_BEGIN
24 static SyntaxPtr create() {
return std::make_shared<GlslSyntax>(); }
36 bool remapEnumeration(
const string& value,
TypeDesc type,
const string& enumNames, std::pair<TypeDesc, ValuePtr>& result)
const override;
38 static const string INPUT_QUALIFIER;
39 static const string OUTPUT_QUALIFIER;
40 static const string UNIFORM_QUALIFIER;
41 static const string CONSTANT_QUALIFIER;
42 static const string FLAT_QUALIFIER;
43 static const string SOURCE_FILE_EXTENSION;
50MATERIALX_NAMESPACE_END
vector< string > StringVec
A vector of strings.
Definition: Library.h:55
Macros for declaring imported and exported symbols.
Base class for syntax handling for shader generators.
shared_ptr< Syntax > SyntaxPtr
Shared pointer to a Syntax.
Definition: Syntax.h:27
Syntax class for GLSL (OpenGL Shading Language)
Definition: GlslSyntax.h:20
bool remapEnumeration(const string &value, TypeDesc type, const string &enumNames, std::pair< TypeDesc, ValuePtr > &result) const override
Given an input specification attempt to remap this to an enumeration which is accepted by the shader ...
const string & getInputQualifier() const override
Returns a type qualifier to be used when declaring types for input variables.
Definition: GlslSyntax.h:26
const string & getConstantQualifier() const override
Get the qualifier used when declaring constant variables.
Definition: GlslSyntax.h:28
const string & getOutputQualifier() const override
Returns a type qualifier to be used when declaring types for output variables.
Definition: GlslSyntax.h:27
const string & getUniformQualifier() const override
Get the qualifier used when declaring uniform variables.
Definition: GlslSyntax.h:29
const string & getSourceFileExtension() const override
Return the file extension used for source code files in this language.
Definition: GlslSyntax.h:30
bool typeSupported(const TypeDesc *type) const override
Query if given type is suppored in the syntax.
Base class for syntax objects used by shader generators to emit code with correct syntax for each lan...
Definition: Syntax.h:41
A type descriptor for MaterialX data types.
Definition: TypeDesc.h:35