Cleanup: GPU: Update classes comments

This should avoid confusion about what is a class and what is an opaque
pointer.
This commit is contained in:
2020-08-21 14:14:56 +02:00
parent 220fbdf593
commit 3a6e981bcd
12 changed files with 51 additions and 4 deletions

View File

@@ -32,6 +32,10 @@
namespace blender {
namespace gpu {
/**
* Base class which is then specialized for each implementation (GL, VK, ...).
* NOTE: Extends GPUBatch as we still needs to expose some of the internals to the outside C code.
**/
class Batch : public GPUBatch {
public:
Batch(){};

View File

@@ -28,6 +28,10 @@
namespace blender {
namespace gpu {
/**
* Implementation of Multi Draw Indirect.
* Base class which is then specialized for each implementation (GL, VK, ...).
**/
class DrawList {
public:
virtual ~DrawList(){};

View File

@@ -45,6 +45,10 @@ typedef struct ShaderInput {
int32_t binding;
} ShaderInput;
/**
* Implementation of Shader interface.
* Base class which is then specialized for each implementation (GL, VK, ...).
**/
class ShaderInterface {
/* TODO(fclem) should be protected. */
public:

View File

@@ -29,6 +29,10 @@
namespace blender {
namespace gpu {
/**
* Implementation of shader compilation and uniforms handling.
* Base class which is then specialized for each implementation (GL, VK, ...).
**/
class Shader {
public:
/** Uniform & attribute locations for shader. */

View File

@@ -151,6 +151,10 @@ inline GPUStateMutable operator~(const GPUStateMutable &a)
return r;
}
/**
* State manager keeping track of the draw state and applying it before drawing.
* Base class which is then specialized for each implementation (GL, VK, ...).
**/
class GPUStateManager {
public:
GPUState state;

View File

@@ -33,6 +33,10 @@ namespace gpu {
# define DEBUG_NAME_LEN 64
#endif
/**
* Implementation of Uniform Buffers.
* Base class which is then specialized for each implementation (GL, VK, ...).
**/
class UniformBuf {
protected:
/** Data size in bytes. */