summaryrefslogtreecommitdiffstats
path: root/src/Runtime/ogl-runtime/src/render/backends/gl/Qt3DSRenderBackendGL4.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Runtime/ogl-runtime/src/render/backends/gl/Qt3DSRenderBackendGL4.h')
m---------src/Runtime/ogl-runtime0
-rw-r--r--src/Runtime/ogl-runtime/src/render/backends/gl/Qt3DSRenderBackendGL4.h205
2 files changed, 0 insertions, 205 deletions
diff --git a/src/Runtime/ogl-runtime b/src/Runtime/ogl-runtime
new file mode 160000
+Subproject 427fddb50d43aa21a90fc7356ee3cdd8a908df5
diff --git a/src/Runtime/ogl-runtime/src/render/backends/gl/Qt3DSRenderBackendGL4.h b/src/Runtime/ogl-runtime/src/render/backends/gl/Qt3DSRenderBackendGL4.h
deleted file mode 100644
index bfdc03b7..00000000
--- a/src/Runtime/ogl-runtime/src/render/backends/gl/Qt3DSRenderBackendGL4.h
+++ /dev/null
@@ -1,205 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2008-2012 NVIDIA Corporation.
-** Copyright (C) 2017 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt 3D Studio.
-**
-** $QT_BEGIN_LICENSE:GPL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 or (at your option) any later version
-** approved by the KDE Free Qt Foundation. The licenses are as published by
-** the Free Software Foundation and appearing in the file LICENSE.GPL3
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-#pragma once
-#ifndef QT3DS_RENDER_BACKEND_GL4_H
-#define QT3DS_RENDER_BACKEND_GL4_H
-
-/// @file Qt3DSRenderBackendGL4.h
-/// NVRender OpenGL 4 backend definition.
-
-#include "foundation/Qt3DSAtomic.h"
-#include "render/backends/gl/Qt3DSRenderBackendGL3.h"
-
-namespace qt3ds {
-namespace render {
-
- using namespace foundation;
-
- class NVRenderBackendGL4Impl : public NVRenderBackendGL3Impl
- {
- public:
- /// constructor
- NVRenderBackendGL4Impl(NVFoundationBase &fnd,
- qt3ds::foundation::IStringTable &stringTable,
- const QSurfaceFormat &format);
- /// destructor
- virtual ~NVRenderBackendGL4Impl();
-
- QT3DS_IMPLEMENT_REF_COUNT_ADDREF_RELEASE_OVERRIDE(m_Foundation)
-
- public:
- void DrawIndirect(NVRenderDrawMode::Enum drawMode, const void *indirect) override;
- void DrawIndexedIndirect(NVRenderDrawMode::Enum drawMode,
- NVRenderComponentTypes::Enum type, const void *indirect) override;
-
- void CreateTextureStorage2D(NVRenderBackendTextureObject to,
- NVRenderTextureTargetType::Enum target, QT3DSU32 levels,
- NVRenderTextureFormats::Enum internalFormat,
- size_t width, size_t height) override;
-
- void SetMultisampledTextureData2D(NVRenderBackendTextureObject to,
- NVRenderTextureTargetType::Enum target,
- size_t samples,
- NVRenderTextureFormats::Enum internalFormat,
- size_t width, size_t height,
- bool fixedsamplelocations) override;
-
- void SetConstantValue(NVRenderBackendShaderProgramObject po, QT3DSU32 id,
- NVRenderShaderDataTypes::Enum type, QT3DSI32 count, const void *value,
- bool transpose) override;
-
- void SetPatchVertexCount(NVRenderBackendInputAssemblerObject iao, QT3DSU32 count) override;
- virtual NVRenderBackendTessControlShaderObject
- CreateTessControlShader(NVConstDataRef<QT3DSI8> source, eastl::string &errorMessage,
- bool binary) override;
- virtual NVRenderBackendTessEvaluationShaderObject
- CreateTessEvaluationShader(NVConstDataRef<QT3DSI8> source, eastl::string &errorMessage,
- bool binary) override;
- virtual NVRenderBackendGeometryShaderObject
- CreateGeometryShader(NVConstDataRef<QT3DSI8> source, eastl::string &errorMessage, bool binary) override;
-
- QT3DSI32 GetStorageBufferCount(NVRenderBackendShaderProgramObject po) override;
- QT3DSI32 GetStorageBufferInfoByID(NVRenderBackendShaderProgramObject po, QT3DSU32 id,
- QT3DSU32 nameBufSize, QT3DSI32 *paramCount,
- QT3DSI32 *bufferSize, QT3DSI32 *length, char *nameBuf) override;
- void ProgramSetStorageBuffer(QT3DSU32 index, NVRenderBackendBufferObject bo) override;
-
- QT3DSI32 GetAtomicCounterBufferCount(NVRenderBackendShaderProgramObject po) override;
- QT3DSI32 GetAtomicCounterBufferInfoByID(NVRenderBackendShaderProgramObject po,
- QT3DSU32 id, QT3DSU32 nameBufSize, QT3DSI32 *paramCount,
- QT3DSI32 *bufferSize, QT3DSI32 *length,
- char *nameBuf) override;
- void ProgramSetAtomicCounterBuffer(QT3DSU32 index, NVRenderBackendBufferObject bo) override;
-
- void SetMemoryBarrier(NVRenderBufferBarrierFlags barriers) override;
- void BindImageTexture(NVRenderBackendTextureObject to, QT3DSU32 unit, QT3DSI32 level,
- bool layered, QT3DSI32 layer,
- NVRenderImageAccessType::Enum access,
- NVRenderTextureFormats::Enum format) override;
-
- virtual NVRenderBackendComputeShaderObject
- CreateComputeShader(NVConstDataRef<QT3DSI8> source, eastl::string &errorMessage, bool binary) override;
- void DispatchCompute(NVRenderBackendShaderProgramObject po, QT3DSU32 numGroupsX,
- QT3DSU32 numGroupsY, QT3DSU32 numGroupsZ) override;
-
- NVRenderBackendProgramPipeline CreateProgramPipeline() override;
- void ReleaseProgramPipeline(NVRenderBackendProgramPipeline ppo) override;
- void SetActiveProgramPipeline(NVRenderBackendProgramPipeline ppo) override;
- void SetProgramStages(NVRenderBackendProgramPipeline ppo,
- NVRenderShaderTypeFlags flags,
- NVRenderBackendShaderProgramObject po) override;
-
- void SetBlendEquation(const NVRenderBlendEquationArgument &pBlendEquArg) override;
- void SetBlendBarrier(void) override;
-
- NVRenderBackendPathObject CreatePathNVObject(size_t range) override;
- void SetPathSpecification(NVRenderBackendPathObject inPathObject,
- NVConstDataRef<QT3DSU8> inPathCommands,
- NVConstDataRef<QT3DSF32> inPathCoords) override;
- NVBounds3 GetPathObjectBoundingBox(NVRenderBackendPathObject inPathObject) override;
- NVBounds3 GetPathObjectFillBox(NVRenderBackendPathObject inPathObject) override;
- NVBounds3 GetPathObjectStrokeBox(NVRenderBackendPathObject inPathObject) override;
- void SetStrokeWidth(NVRenderBackendPathObject inPathObject, QT3DSF32 inStrokeWidth) override;
-
- void SetPathProjectionMatrix(const QT3DSMat44 inPathProjection) override;
- void SetPathModelViewMatrix(const QT3DSMat44 inPathModelview) override;
- void SetPathStencilDepthOffset(QT3DSF32 inSlope, QT3DSF32 inBias) override;
- void SetPathCoverDepthFunc(NVRenderBoolOp::Enum inDepthFunction) override;
- void StencilStrokePath(NVRenderBackendPathObject inPathObject) override;
- void StencilFillPath(NVRenderBackendPathObject inPathObject) override;
- void ReleasePathNVObject(NVRenderBackendPathObject po, size_t range) override;
-
- void StencilFillPathInstanced(
- NVRenderBackendPathObject po, size_t numPaths, NVRenderPathFormatType::Enum type,
- const void *charCodes, NVRenderPathFillMode::Enum fillMode, QT3DSU32 stencilMask,
- NVRenderPathTransformType::Enum transformType, const QT3DSF32 *transformValues) override;
- void StencilStrokePathInstancedN(NVRenderBackendPathObject po, size_t numPaths,
- NVRenderPathFormatType::Enum type,
- const void *charCodes, QT3DSI32 stencilRef,
- QT3DSU32 stencilMask,
- NVRenderPathTransformType::Enum transformType,
- const QT3DSF32 *transformValues) override;
- void CoverFillPathInstanced(NVRenderBackendPathObject po, size_t numPaths,
- NVRenderPathFormatType::Enum type,
- const void *charCodes,
- NVRenderPathCoverMode::Enum coverMode,
- NVRenderPathTransformType::Enum transformType,
- const QT3DSF32 *transformValues) override;
- void CoverStrokePathInstanced(NVRenderBackendPathObject po, size_t numPaths,
- NVRenderPathFormatType::Enum type,
- const void *charCodes,
- NVRenderPathCoverMode::Enum coverMode,
- NVRenderPathTransformType::Enum transformType,
- const QT3DSF32 *transformValues) override;
- void LoadPathGlyphs(NVRenderBackendPathObject po,
- NVRenderPathFontTarget::Enum fontTarget, const void *fontName,
- NVRenderPathFontStyleFlags fontStyle, size_t numGlyphs,
- NVRenderPathFormatType::Enum type, const void *charCodes,
- NVRenderPathMissingGlyphs::Enum handleMissingGlyphs,
- NVRenderBackendPathObject pathParameterTemplate, QT3DSF32 emScale) override;
- virtual NVRenderPathReturnValues::Enum
- LoadPathGlyphsIndexed(NVRenderBackendPathObject po, NVRenderPathFontTarget::Enum fontTarget,
- const void *fontName, NVRenderPathFontStyleFlags fontStyle,
- QT3DSU32 firstGlyphIndex, size_t numGlyphs,
- NVRenderBackendPathObject pathParameterTemplate, QT3DSF32 emScale) override;
- virtual NVRenderBackendPathObject
- LoadPathGlyphsIndexedRange(NVRenderPathFontTarget::Enum fontTarget, const void *fontName,
- NVRenderPathFontStyleFlags fontStyle,
- NVRenderBackendPathObject pathParameterTemplate, QT3DSF32 emScale,
- QT3DSU32 *count) override;
- void LoadPathGlyphRange(NVRenderBackendPathObject po,
- NVRenderPathFontTarget::Enum fontTarget,
- const void *fontName, NVRenderPathFontStyleFlags fontStyle,
- QT3DSU32 firstGlyph, size_t numGlyphs,
- NVRenderPathMissingGlyphs::Enum handleMissingGlyphs,
- NVRenderBackendPathObject pathParameterTemplate,
- QT3DSF32 emScale) override;
- void GetPathMetrics(NVRenderBackendPathObject po, size_t numPaths,
- NVRenderPathGlyphFontMetricFlags metricQueryMask,
- NVRenderPathFormatType::Enum type, const void *charCodes,
- size_t stride, QT3DSF32 *metrics) override;
- void GetPathMetricsRange(NVRenderBackendPathObject po, size_t numPaths,
- NVRenderPathGlyphFontMetricFlags metricQueryMask,
- size_t stride, QT3DSF32 *metrics) override;
- void GetPathSpacing(NVRenderBackendPathObject po, size_t numPaths,
- NVRenderPathListMode::Enum pathListMode,
- NVRenderPathFormatType::Enum type, const void *charCodes,
- QT3DSF32 advanceScale, QT3DSF32 kerningScale,
- NVRenderPathTransformType::Enum transformType, QT3DSF32 *spacing) override;
- private:
-#if !defined(QT_OPENGL_ES)
- QOpenGLExtension_NV_path_rendering *m_nvPathRendering;
- QOpenGLExtension_EXT_direct_state_access *m_directStateAccess;
-#endif
- };
-}
-}
-
-#endif