aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickshadereffect_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/items/qquickshadereffect_p.h')
-rw-r--r--src/quick/items/qquickshadereffect_p.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/quick/items/qquickshadereffect_p.h b/src/quick/items/qquickshadereffect_p.h
index 62d7e6fe5f..390703350f 100644
--- a/src/quick/items/qquickshadereffect_p.h
+++ b/src/quick/items/qquickshadereffect_p.h
@@ -70,6 +70,9 @@ class Q_QUICK_PRIVATE_EXPORT QQuickShaderEffect : public QQuickItem
Q_PROPERTY(QString log READ log NOTIFY logChanged)
Q_PROPERTY(Status status READ status NOTIFY statusChanged)
Q_PROPERTY(bool supportsAtlasTextures READ supportsAtlasTextures WRITE setSupportsAtlasTextures NOTIFY supportsAtlasTexturesChanged REVISION 1)
+ Q_PROPERTY(ShaderType shaderType READ shaderType NOTIFY shaderTypeChanged REVISION 2)
+ Q_PROPERTY(ShaderCompilationType shaderCompilationType READ shaderCompilationType NOTIFY shaderCompilationTypeChanged REVISION 2)
+ Q_PROPERTY(ShaderSourceType shaderSourceType READ shaderSourceType NOTIFY shaderSourceTypeChanged REVISION 2)
public:
enum CullMode {
@@ -86,6 +89,26 @@ public:
};
Q_ENUM(Status)
+ enum ShaderType {
+ GLSL,
+ HLSL,
+ Metal
+ };
+ Q_ENUM(ShaderType)
+
+ enum ShaderCompilationType {
+ RuntimeCompilation = 0x01,
+ OfflineCompilation = 0x02
+ };
+ Q_ENUM(ShaderCompilationType)
+
+ enum ShaderSourceType {
+ ShaderSourceString = 0x01,
+ ShaderSourceFile = 0x02,
+ ShaderByteCode = 0x04
+ };
+ Q_ENUM(ShaderSourceType)
+
QQuickShaderEffect(QQuickItem *parent = 0);
QByteArray fragmentShader() const;
@@ -109,6 +132,10 @@ public:
QString log() const;
Status status() const;
+ ShaderType shaderType() const;
+ ShaderCompilationType shaderCompilationType() const;
+ ShaderSourceType shaderSourceType() const;
+
bool isComponentComplete() const;
QString parseLog();
@@ -121,6 +148,9 @@ Q_SIGNALS:
void logChanged();
void statusChanged();
void supportsAtlasTexturesChanged();
+ void shaderTypeChanged();
+ void shaderCompilationTypeChanged();
+ void shaderSourceTypeChanged();
protected:
bool event(QEvent *e) override;