![]() |
VPP
0.8
A high-level modern C++ API for Vulkan
|
| ▶Nvpp | The VPP namespace |
| ▶Nct | The VPP Computation Toolkit namespace |
| ▶Ngroup | The group algorithms namespace |
| CGroupInvocation | |
| CarrayOf | Template allowing to construct arrays of binding points |
| CAttachment | Represents attachment graph node |
| CAttribute | Template for defining vertex or instance data fields |
| CBar | Utility base class for barrier classes |
| CBarrierList | Multiple barriers with default parameters |
| CBarriers | General class encapsulating description of a set of pipeline barriers |
| CBool | Shader (GPU-side) data type for boolean values |
| CBuf | Generic class representing Vulkan buffers |
| CBuffer | Typed Vulkan buffer of specified purpose. Most functions operating on buffers require typed buffer, therefore this is the class you want to use most of the time |
| CBufferMemoryBarrier | Single buffer barrier |
| CBVec2 | Shader (GPU-side) data type for 2-element boolean vectors |
| CBVec3 | Shader (GPU-side) data type for 3-element boolean vectors |
| CBVec4 | Shader (GPU-side) data type for 4-element boolean vectors |
| CCommandBuffer | Represents a sequence of Vulkan commands |
| CCommandBufferRecorder | Interface to the automatic command recording framework |
| CCommandPool | Allocates and manages the lifetime of command buffers |
| CCompiledProcedures | |
| CComputation | Base class for single computation routine |
| CComputationEngine | Base class for computation engines |
| CComputePass | Represents compute pass |
| CComputePipeline | Compiled pipeline class for compute pipelines |
| CComputePipelineConfig | Base class for custom compute pipelines |
| CComputePipelineLayout | Pipeline layout template for a compute pipeline. Use to create actual pipeline layout (Vulkan objects) from abstract representation in the form of ComputePipelineConfig object |
| CComputeShader | Compute shader interface |
| ▶CcomputeShader | Binding point class for compute shaders. Place in your pipeline configuration class to declare a compute shader |
| CSLocalSize | |
| CcreateInstance | Instance factory class |
| CDebugReporter | Base class for debug report generators |
| CDevice | Represents logical rendering device |
| CDeviceFeatures | Utility class for dealing with device features and known extensions |
| CDeviceMemory | |
| Cdgvector | Array allocated entirely on GPU side, without any mapping to the CPU side |
| CDispatchIndirectCommands | Utility subclass representing a vector of indirect dispatch ranges |
| CDisplay | Represents display attachment graph node |
| CDouble | Shader (GPU-side) data type for 64-bit floating point values |
| CDVec2 | Shader (GPU-side) data type for 2-element 64-bit floating point vectors |
| CDVec3 | Shader (GPU-side) data type for 3-element 64-bit floating point vectors |
| CDVec4 | Shader (GPU-side) data type for 4-element 64-bit floating point vectors |
| CEvent | Allows the GPU to wait for certain condition on CPU or GPU side to occur |
| CExtendedCommands | |
| CFence | Allows the CPU to wait for GPU operation to finish |
| CField | Template for defining local structure data fields |
| CFloat | Shader (GPU-side) data type for 32-bit floating point values |
| CFragmentShader | Fragment shader interface |
| CfragmentShader | Binding point class for fragment shaders. Place in your pipeline configuration class to declare a fragment shader |
| CFrameBuffer | Defines a vector of physical images to be used as targets for rendering attachments |
| CFrameImageView | Untyped image view class. Useful for constructing FrameBuffer objects |
| CFunction | Creates shader-level function |
| CgeometryShader | Binding point class for geometry shaders. Place in your pipeline configuration class to declare a geometry shader |
| CGeometryShader | Geometry shader interface |
| Cgl_perVertex | Auxiliary structure holding basic vertex attributes |
| Cgvector | Generic STL-style vector allocating memory on the GPU |
| CImage | Class representing typed Vulkan image |
| CImageAttributes | A template containing image attributes inside C++ type |
| CImageInfo | A structure containing image parameters |
| CImageMemoryBarrier | Single image barrier |
| CImageView | Typed image view |
| CImageViewAttributes | A template encoding image view attributes inside C++ type |
| CIMat2 | Shader (GPU-side) data type for 2x2 32-bit integer matrices |
| CIMat2x3 | Shader (GPU-side) data type for 2 columns, 3 rows 32-bit integer matrices |
| CIMat2x4 | Shader (GPU-side) data type for 2 columns, 4 rows 32-bit integer matrices |
| CIMat3 | Shader (GPU-side) data type for 3x3 32-bit integer matrices |
| CIMat3x2 | Shader (GPU-side) data type for 3 columns, 2 rows 32-bit integer matrices |
| CIMat3x4 | Shader (GPU-side) data type for 3 columns, 4 rows 32-bit integer matrices |
| CIMat4 | Shader (GPU-side) data type for 4x4 32-bit integer matrices |
| CIMat4x2 | Shader (GPU-side) data type for 4 columns, 2 rows 32-bit integer matrices |
| CIMat4x3 | Shader (GPU-side) data type for 4 columns, 3 rows 32-bit integer matrices |
| CImg | Class representing generic (untyped) Vulkan image |
| CinAttachment | Input attachment binding point |
| CinConstSampledTexture | A binding point for read-only texture with predefined (constant) sampler |
| CinConstSampler | Static sampler binding point |
| CIndexedIndirectCommands | Utility subclass representing a vector of indexed indirect draw ranges |
| CIndices | Utility subclass representing a vector of indices for indexed draws |
| CIndirectBufferView | |
| CIndirectCommands | Utility subclass representing a vector of indirect draw ranges |
| CinPushConstant | Binding point class for push constant data input to shaders. Place in your pipeline configuration class to declare a push constant |
| CInput | Provides input access to communication variable binding point from shader code |
| CinSampledTexture | A binding point for read-only texture with associated sampler |
| CinSampler | Sampler binding point |
| CInstance | Represents the instance of Vulkan system |
| CInstanceStruct | Base class for instance data structures |
| CInt | Shader (GPU-side) data type for 32-bit signed integer values |
| CInt64 | Shader (GPU-side) data type for 64-bit signed integer values |
| CinTexture | Texture (read-only) image binding point |
| CinTextureBuffer | Uniform (read-only) texel buffer binding point |
| CinUniformBuffer | Binding point class for uniform (read-only) data input to shaders. Place in your pipeline configuration class to declare a uniform data source |
| CinUniformBufferDyn | Currently not implemented |
| CinVertexData | Binding point class for vertex and instance input to shaders. Place in your pipeline configuration class to declare a vertex or instance data source |
| CioBuffer | Binding point class for storage (read-write) data buffer to shaders. Place in your pipeline configuration class to declare a storage data buffer |
| CioBufferDyn | Currently not implemented |
| CioImage | Storage (read-write) image binding point |
| CioImageBuffer | Storage (read-write) texel buffer binding point |
| CioStructure | Binding point class for inter-shader communication variable of structural type. Place in your pipeline configuration class to declare an inter-shader communication variable |
| CioVariable | Binding point class for inter-shader communication variable of simple type (scalar, vector or matrix). Place in your pipeline configuration class to declare an inter-shader communication variable |
| CIVec2 | Shader (GPU-side) data type for 2-element 32-bit integer vectors |
| CIVec3 | Shader (GPU-side) data type for 3-element 32-bit integer vectors |
| CIVec4 | Shader (GPU-side) data type for 4-element 32-bit integer vectors |
| CLocalStruct | Base class for local data structures |
| CMappableDeviceMemory | |
| CMat2 | Shader (GPU-side) data type for 2x2 32-bit float matrices |
| CMat2x3 | Shader (GPU-side) data type for 2 columns, 3 rows 32-bit float matrices |
| CMat2x4 | Shader (GPU-side) data type for 2 columns, 4 rows 32-bit float matrices |
| CMat3 | Shader (GPU-side) data type for 3x3 32-bit float matrices |
| CMat3x2 | Shader (GPU-side) data type for 3 columns, 2 rows 32-bit float matrices |
| CMat3x4 | Shader (GPU-side) data type for 3 columns, 4 rows 32-bit float matrices |
| CMat4 | Shader (GPU-side) data type for 4x4 32-bit float matrices |
| CMat4x2 | Shader (GPU-side) data type for 4 columns, 2 rows 32-bit float matrices |
| CMat4x3 | Shader (GPU-side) data type for 4 columns, 3 rows 32-bit float matrices |
| CMemoryBarrier | Single global memory barrier |
| CMemoryBinding | A compound object containing references to a buffer and memory bound to it |
| CMemProfile | Abstraction of GPU-interoperable memory types |
| CNonRenderingCommands | Set of commands that may be used outside rendering context |
| CNormalizedSampler | Texture sampler object (normalized) |
| CoutAttachment | Output attachment binding point |
| COutput | Provides output access to communication variable binding point from shader code |
| CPar | Defines a function parameter |
| CPHVec4 | |
| CPhysicalDevice | Represents physical rendering device |
| CPipeline | Compiled pipeline class for graphics pipelines |
| CPipelineCache | |
| CPipelineConfig | Base class for custom rendering pipelines |
| CPipelineLayout | Pipeline layout template for a graphics pipeline. Use to create actual pipeline layout (Vulkan objects) from abstract representation in the form of PipelineConfig object |
| CPointer | Shader (GPU-side) data type for pointers to workgroup and global scoped variables |
| CPostprocess | Represents finalization process graph node |
| CPreprocess | Represents preparation process graph node |
| CProcedure | |
| CProcess | Represents process graph node |
| CQueue | Command queue for execution of commands |
| CRenderGraph | Base class for render graphs |
| CRenderingCommandContext | |
| CRenderingOptions | A container for various rendering parameters |
| CRenderManager | Simple rendering manager |
| CRenderPass | Represents Vulkan render pass |
| CSemaphore | Allows the GPU to wait for another GPU operation to finish |
| CSGatherOffsets | |
| CShader | Base class for shader interfaces |
| CShaderDataBlock | Represents a group of resources bound to rendering or compute pipeline |
| CSNormalizedSampler | Structure describing normalized sampler parameters |
| CStorageBufferView | |
| CStreamDebugReporter | A debug reporter class working with C++ output streams |
| CSUnnormalizedSampler | Structure describing unnormalized sampler parameters |
| CSurface | Represents a surface visible on the screen |
| CSurfaceInfo | A platform-dependent structure containing information required to create a surface |
| CSVulkanVersion | Structure holding information about Vulkan version |
| CSwapChain | Represents a set of swappable on-screen images |
| CTessControlShader | Tessellation control shader interface |
| CtessControlShader | Binding point class for tessellation control shaders. Place in your pipeline configuration class to declare a tessellation control shader |
| CtessEvalShader | Binding point class for tessellation evaluation shaders. Place in your pipeline configuration class to declare a tessellation evaluation shader |
| CTessEvalShader | Tessellation evaluation shader interface |
| CTexelArray | Provides shader code access to a binding point for a buffer holding array of formatted texels. These data objects are either simple scalars or vectors, defined by vpp::format object |
| CTexelBufferView | Buffer view for texel buffers |
| CUInt | Shader (GPU-side) data type for 32-bit unsigned integer values |
| CUInt64 | Shader (GPU-side) data type for 64-bit unsigned integer values |
| CUniformArray | Provides shader code access to a binding point for buffer holding array of structures |
| CUniformBufferView | |
| CUniformFld | Template for defining uniform data fields |
| CUniformSimpleArray | Provides shader code access to a binding point for buffer holding array of simple scalars, vectors or matrices |
| CUniformStruct | Base class for uniform data structures |
| CUniformVar | Provides access to scalar or arrayed buffer binding point from shader code |
| CUniversalCommands | Set of commands that may be used anywhere (inside or outside rendering context) |
| CUnnormalizedSampler | Texture sampler object (normalized) |
| CUVec2 | Shader (GPU-side) data type for 2-element 32-bit unsigned integer vectors |
| CUVec3 | Shader (GPU-side) data type for 3-element 32-bit unsigned integer vectors |
| CUVec4 | Shader (GPU-side) data type for 4-element 32-bit unsigned integer vectors |
| CVArray | Declares mutable shader local variable of array type |
| CVBool | Shader (GPU-side) data type for mutable variables of boolean type |
| CVBVec2 | Shader (GPU-side) data type for mutable variables of 2-element boolean vector type |
| CVBVec3 | Shader (GPU-side) data type for mutable variables of 3-element boolean vector type |
| CVBVec4 | Shader (GPU-side) data type for mutable variables of 4-element boolean vector type |
| CVDouble | Shader (GPU-side) data type for mutable variables of 64-bit floating point type |
| CVDVec2 | Shader (GPU-side) data type for mutable variables of 2-element 64-bit float vector type |
| CVDVec3 | Shader (GPU-side) data type for mutable variables of 3-element 64-bit float vector type |
| CVDVec4 | Shader (GPU-side) data type for mutable variables of 4-element 64-bit float vector type |
| CVec2 | Shader (GPU-side) data type for 2-element 32-bit float vectors |
| CVec3 | Shader (GPU-side) data type for 3-element 32-bit float vectors |
| CVec4 | Shader (GPU-side) data type for 4-element 32-bit float vectors |
| CVertexBufferView | Buffer view for vertex buffers |
| CVertexIndexBufferView | |
| CvertexShader | Binding point class for vertex shaders. Place in your pipeline configuration class to declare a vertex shader |
| CVertexShader | Vertex shader interface |
| CVertexStruct | Base class for vertex data structures |
| CVFloat | Shader (GPU-side) data type for mutable variables of 32-bit floating point type |
| CViewport | Helper class to define simple Vulkan viewport |
| CVInt | Shader (GPU-side) data type for mutable variables of 32-bit signed integer type |
| CVInt64 | Shader (GPU-side) data type for mutable variables of 64-bit signed integer type |
| CVIVec2 | Shader (GPU-side) data type for mutable variables of 2-element 32-bit integer vector type |
| CVIVec3 | Shader (GPU-side) data type for mutable variables of 3-element 32-bit integer vector type |
| CVIVec4 | Shader (GPU-side) data type for mutable variables of 4-element 32-bit integer vector type |
| CVMat2 | Shader (GPU-side) data type for mutable variables of 2x2 32-bit float matrix type |
| CVMat2x3 | Shader (GPU-side) data type for mutable variables of 2 columns, 3 rows 32-bit float matrix type |
| CVMat2x4 | Shader (GPU-side) data type for mutable variables of 2 columns, 4 rows 32-bit float matrix type |
| CVMat3 | Shader (GPU-side) data type for mutable variables of 3x3 32-bit float matrix type |
| CVMat3x2 | Shader (GPU-side) data type for mutable variables of 3 columns, 2 rows 32-bit float matrix type |
| CVMat3x4 | Shader (GPU-side) data type for mutable variables of 3 columns, 4 rows 32-bit float matrix type |
| CVMat4 | Shader (GPU-side) data type for mutable variables of 4x4 32-bit floating point matrix type |
| CVMat4x2 | Shader (GPU-side) data type for mutable variables of 4 columns, 2 rows 32-bit float matrix type |
| CVMat4x3 | Shader (GPU-side) data type for mutable variables of 4 columns, 3 rows 32-bit float matrix type |
| CVoid | Shader (GPU-side) void data type |
| CVUInt | Shader (GPU-side) data type for mutable variables of 32-bit unsigned integer type |
| CVUInt64 | Shader (GPU-side) data type for mutable variables of 64-bit unsigned integer type |
| CVUVec2 | Shader (GPU-side) data type for mutable variables of 2-element 32-bit unsigned integer vector type |
| CVUVec3 | Shader (GPU-side) data type for mutable variables of 3-element 32-bit unsigned integer vector type |
| CVUVec4 | Shader (GPU-side) data type for mutable variables of 4-element 32-bit unsigned integer vector type |
| CVVec2 | Shader (GPU-side) data type for mutable variables of 2-element 32-bit float vector type |
| CVVec3 | Shader (GPU-side) data type for mutable variables of 3-element 32-bit float vector type |
| CVVec4 | Shader (GPU-side) data type for mutable variables of 4-element 32-bit float vector type |
| CWArray | Declares workgroup-scoped variable of array type |
| CWArray2 | Declares workgroup-scoped variable of two-dimensional array type |
| CWArray3 | |
| CWBool | Shader (GPU-side) data type for workgroup variables of boolean type |
| CWDouble | Shader (GPU-side) data type for workgroup variables of 64-bit floating point type |
| CWFloat | Shader (GPU-side) data type for workgroup variables of 32-bit floating point type |
| CWInt | Shader (GPU-side) data type for workgroup variables of 32-bit signed integer type |
| CWInt64 | Shader (GPU-side) data type for workgroup variables of 64-bit unsigned integer type |
| CWUInt | Shader (GPU-side) data type for workgroup variables of 32-bit unsigned integer type |
| CWUInt64 | Shader (GPU-side) data type for workgroup variables of 64-bit unsigned integer type |
