Commit 620e8e97 authored by Laszlo Agocs's avatar Laszlo Agocs

Add qdoc config

so 'make docs' will start doing something now
parent 27d750b0
QMAKE_DOCS = $$PWD/qtrhi.qdocconf
OTHER_FILES += $$PWD/src/*.qdoc
include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
project = QtRhi
description = Qt Rendering Hardware Interface Reference Documentation
version = $QT_VERSION
examplesinstallpath = rhi
qhp.projects = QtRhi
qhp.QtRhi.file = qtrhi.qhp
qhp.QtRhi.namespace = org.qt-project.qtrhi.$QT_VERSION_TAG
qhp.QtRhi.virtualFolder = qtrhi
qhp.QtRhi.indexTitle = Qt Rendering Hardware Interface
qhp.QtRhi.indexRoot =
qhp.QtRhi.filterAttributes = qtrhi $QT_VERSION qtrefdoc
qhp.QtRhi.customFilters.Qt.name = QtRhi $QT_VERSION
qhp.QtRhi.customFilters.Qt.filterAttributes = qtrhi $QT_VERSION
qhp.QtRhi.subprojects = classes examples
qhp.QtRhi.subprojects.classes.title = C++ Classes
qhp.QtRhi.subprojects.classes.indexTitle = Qt Rendering Hardware Interface C++ Classes
qhp.QtRhi.subprojects.classes.selectors = class fake:headerfile
qhp.QtRhi.subprojects.classes.sortPages = true
qhp.QtRhi.subprojects.examples.title = Examples
qhp.QtRhi.subprojects.examples.indexTitle = Qt Rendering Hardware Interface Examples and Tutorials
qhp.QtRhi.subprojects.examples.selectors = fake:example
tagfile = ../../../doc/qtrhi/qtrhi.tags
depends += qtcore qtgui
headerdirs += ..
sourcedirs += ..
exampledirs += ../../../examples/rhi \
snippets
imagedirs += images
navigation.landingpage = "Qt Rendering Hardware Interface"
navigation.landingtitle = "RHI"
navigation.cppclassespage = "Qt Rendering Hardware Interface C++ Classes"
Cpp.ignoretokens += Q_RHI_EXPORT
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt RHI module
**
** $QT_BEGIN_LICENSE:FDL$
** 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 Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\page copyright-notices.html
\title Copyright Notices
\section1 Third-party Licenses
The following table lists parts (modules) of Qt Rendering Hardware Interface that
incorporate code licensed under third-party open-source licenses:
\annotatedlist attributions-qtrhi
*/
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt RHI module
**
** $QT_BEGIN_LICENSE:FDL$
** 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 Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\module QtRhi
\title Qt Rendering Hardware Interface C++ Classes
\ingroup modules
\qtvariable rhi
To include the definitions of the module's classes, use the following directive:
\badcode
#include <QtRhi>
\endcode
To link against the module, add this line to your \l qmake \c .pro file:
\badcode
QT += rhi
\endcode
*/
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt RHI module
**
** $QT_BEGIN_LICENSE:FDL$
** 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 Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\title Qt Rendering Hardware Interface
\page qtrhi-index.html
\section1 Table of Contents
\list
\li \l {Qt Rendering Hardware Interface C++ Classes}
\li \l {Copyright Notices}
\endlist
*/
......@@ -52,6 +52,181 @@
QT_BEGIN_NAMESPACE
/*!
\class QRhi
\inmodule QtRhi
*/
/*!
\class QRhiInitParams
\inmodule QtRhi
*/
/*!
\class QRhiColorClearValue
\inmodule QtRhi
*/
/*!
\class QRhiDepthStencilClearValue
\inmodule QtRhi
*/
/*!
\class QRhiViewport
\inmodule QtRhi
*/
/*!
\class QRhiScissor
\inmodule QtRhi
*/
/*!
\class QRhiVertexInputLayout
\inmodule QtRhi
*/
/*!
\class QRhiVertexInputLayout::Binding
\inmodule QtRhi
*/
/*!
\class QRhiVertexInputLayout::Attribute
\inmodule QtRhi
*/
/*!
\class QRhiGraphicsShaderStage
\inmodule QtRhi
*/
/*!
\class QRhiShaderResourceBinding
\inmodule QtRhi
*/
/*!
\class QRhiTextureRenderTargetDescription
\inmodule QtRhi
*/
/*!
\class QRhiTextureRenderTargetDescription::ColorAttachment
\inmodule QtRhi
*/
/*!
\class QRhiTextureUploadDescription
\inmodule QtRhi
*/
/*!
\class QRhiTextureUploadDescription::Layer
\inmodule QtRhi
*/
/*!
\class QRhiTextureUploadDescription::Layer::MipLevel
\inmodule QtRhi
*/
/*!
\class QRhiTextureCopyDescription
\inmodule QtRhi
*/
/*!
\class QRhiReadbackDescription
\inmodule QtRhi
*/
/*!
\class QRhiReadbackResult
\inmodule QtRhi
*/
/*!
\class QRhiNativeHandles
\inmodule QtRhi
*/
/*!
\class QRhiResource
\inmodule QtRhi
*/
/*!
\class QRhiBuffer
\inmodule QtRhi
*/
/*!
\class QRhiTexture
\inmodule QtRhi
*/
/*!
\class QRhiSampler
\inmodule QtRhi
*/
/*!
\class QRhiRenderBuffer
\inmodule QtRhi
*/
/*!
\class QRhiRenderPassDescriptor
\inmodule QtRhi
*/
/*!
\class QRhiRenderTarget
\inmodule QtRhi
*/
/*!
\class QRhiTextureRenderTarget
\inmodule QtRhi
*/
/*!
\class QRhiShaderResourceBindings
\inmodule QtRhi
*/
/*!
\class QRhiGraphicsPipeline
\inmodule QtRhi
*/
/*!
\class QRhiGraphicsPipeline::TargetBlend
\inmodule QtRhi
*/
/*!
\class QRhiGraphicsPipeline::StencilOpState
\inmodule QtRhi
*/
/*!
\class QRhiSwapChain
\inmodule QtRhi
*/
/*!
\class QRhiCommandBuffer
\inmodule QtRhi
*/
/*!
\class QRhiResourceUpdateBatch
\inmodule QtRhi
*/
QRhiResource::QRhiResource(QRhiImplementation *rhi_)
: rhi(rhi_)
{
......
......@@ -54,6 +54,21 @@ QT_BEGIN_NAMESPACE
returns) to the driver).
*/
/*!
\class QRhiD3D11InitParams
\inmodule QtRhi
*/
/*!
\class QRhiD3D11NativeHandles
\inmodule QtRhi
*/
/*!
\class QRhiD3D11TextureNativeHandles
\inmodule QtRhi
*/
QRhiD3D11::QRhiD3D11(QRhiInitParams *params)
: ofr(this)
{
......
......@@ -58,6 +58,21 @@ QT_BEGIN_NAMESPACE
renderbuffers and blits are used when available.
*/
/*!
\class QRhiGles2InitParams
\inmodule QtRhi
*/
/*!
\class QRhiGles2NativeHandles
\inmodule QtRhi
*/
/*!
\class QRhiGles2TextureNativeHandles
\inmodule QtRhi
*/
QRhiGles2::QRhiGles2(QRhiInitParams *params)
: ofr(this)
{
......
......@@ -62,6 +62,21 @@ QT_BEGIN_NAMESPACE
// in Debug mode in XCode. Some of the issues that break validation are not
// obvious and not visible when running outside XCode.
/*!
\class QRhiMetalInitParams
\inmodule QtRhi
*/
/*!
\class QRhiMetalNativeHandles
\inmodule QtRhi
*/
/*!
\class QRhiMetalTextureNativeHandles
\inmodule QtRhi
*/
struct QRhiMetalData
{
QRhiMetalData(QRhiImplementation *rhi) : ofr(rhi) { }
......
......@@ -58,6 +58,21 @@ QT_BEGIN_NAMESPACE
can be 2 frames in flight). This is handled transparently to the application.
*/
/*!
\class QRhiVulkanInitParams
\inmodule QtRhi
*/
/*!
\class QRhiVulkanNativeHandles
\inmodule QtRhi
*/
/*!
\class QRhiVulkanTextureNativeHandles
\inmodule QtRhi
*/
static inline VkDeviceSize aligned(VkDeviceSize v, VkDeviceSize byteAlign)
{
return (v + byteAlign - 1) & ~(byteAlign - 1);
......
......@@ -53,6 +53,10 @@ QT_BEGIN_NAMESPACE
# endif
#endif
#ifdef Q_CLANG_QDOC
#define Q_RHI_EXPORT
#endif
QT_END_NAMESPACE
#endif
......@@ -54,4 +54,6 @@ mac {
include($$PWD/../3rdparty/VulkanMemoryAllocator.pri)
include($$PWD/doc/doc.pri)
load(qt_module)
QMAKE_DOCS = $$PWD/qtshadertools.qdocconf
OTHER_FILES += $$PWD/src/*.qdoc
include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
project = QtShaderTools
description = Qt Shader Tools Reference Documentation
version = $QT_VERSION
examplesinstallpath = shadertools
qhp.projects = QtShaderTools
qhp.QtShaderTools.file = qtshadertools.qhp
qhp.QtShaderTools.namespace = org.qt-project.qtshadertools.$QT_VERSION_TAG
qhp.QtShaderTools.virtualFolder = qtshadertools
qhp.QtShaderTools.indexTitle = Qt Shader Tools
qhp.QtShaderTools.indexRoot =
qhp.QtShaderTools.filterAttributes = qtshadertools $QT_VERSION qtrefdoc
qhp.QtShaderTools.customFilters.Qt.name = QtShaderTools $QT_VERSION
qhp.QtShaderTools.customFilters.Qt.filterAttributes = qtshadertools $QT_VERSION
qhp.QtShaderTools.subprojects = classes examples
qhp.QtShaderTools.subprojects.classes.title = C++ Classes
qhp.QtShaderTools.subprojects.classes.indexTitle = Qt Shader Tools C++ Classes
qhp.QtShaderTools.subprojects.classes.selectors = class fake:headerfile
qhp.QtShaderTools.subprojects.classes.sortPages = true
qhp.QtShaderTools.subprojects.examples.title = Examples
qhp.QtShaderTools.subprojects.examples.indexTitle = Qt Shader Tools Examples and Tutorials
qhp.QtShaderTools.subprojects.examples.selectors = fake:example
tagfile = ../../../doc/qtshadertools/qtshadertools.tags
depends += qtcore qtgui
headerdirs += ..
sourcedirs += ..
exampledirs += ../../../examples/shadertools \
snippets
imagedirs += images
navigation.landingpage = "Qt Shader Tools"
navigation.landingtitle = "Shader Tools"
navigation.cppclassespage = "Qt Shader Tools C++ Classes"
Cpp.ignoretokens += Q_SHADERTOOLS_EXPORT
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Shader Tools module
**
** $QT_BEGIN_LICENSE:FDL$
** 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 Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\page copyright-notices.html
\title Copyright Notices
\section1 Third-party Licenses
The following table lists parts (modules) of Qt Rendering Hardware Interface that
incorporate code licensed under third-party open-source licenses:
\annotatedlist attributions-qtshadertools
*/
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Shader Tools module
**
** $QT_BEGIN_LICENSE:FDL$
** 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 Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\module QtShaderTools
\title Qt Shader Tools C++ Classes
\ingroup modules
\qtvariable shadertools
To include the definitions of the module's classes, use the following directive:
\badcode
#include <QtShaderTools>
\endcode
To link against the module, add this line to your \l qmake \c .pro file:
\badcode
QT += shadertools
\endcode
*/
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Shader Tools module
**
** $QT_BEGIN_LICENSE:FDL$
** 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 Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\title Qt Shader Tools
\page qtshadertools-index.html
\section1 Table of Contents
\list
\li \l {Qt Shader Tools C++ Classes}
\li \l {Copyright Notices}
\endlist
*/
......@@ -40,6 +40,11 @@
QT_BEGIN_NAMESPACE
/*!
\class QBakedShader
\inmodule QtShaderTools
*/
static const int QSB_VERSION = 1;
QBakedShader::QBakedShader()
......
......@@ -43,6 +43,11 @@
QT_BEGIN_NAMESPACE
/*!
\class QShaderBaker
\inmodule QtShaderTools
*/
struct QShaderBakerPrivate
{
bool readFile(const QString &fn);
......@@ -189,7 +194,7 @@ QBakedShader QShaderBaker::bake()
break;
case QBakedShader::GlslShader:
{
QSpirvShader::GlslFlags flags = 0; // FixClipSpace??
QSpirvShader::GlslFlags flags = 0;
if (req.second.flags.testFlag(QBakedShader::ShaderSourceVersion::GlslEs))
flags |= QSpirvShader::GlslEs;
shader.shader = currentSpirvShader->translateToGLSL(req.second.version, flags);
......
......@@ -41,6 +41,11 @@
QT_BEGIN_NAMESPACE
/*!
\class QShaderDescription
\inmodule QtShaderTools
*/
QShaderDescription::QShaderDescription()
: d(new QShaderDescriptionPrivate)
{
......
......@@ -53,6 +53,10 @@ QT_BEGIN_NAMESPACE
# endif
#endif
#ifdef Q_CLANG_QDOC
#define Q_SHADERTOOLS_EXPORT
#endif
QT_END_NAMESPACE
#endif
......@@ -34,4 +34,6 @@ for(libname, STATICLIBS) {
PRE_TARGETDEPS += $$staticlib
}
include($$PWD/doc/doc.pri)
load(qt_module)