![]() |
Project
|
#include <GPUDisplayBackendVulkan.h>
Inherits o2::gpu::GPUDisplayBackend.
Classes | |
struct | FontSymbolVulkan |
struct | SwapChainSupportDetails |
struct | TextDrawCommand |
struct | VulkanBuffer |
struct | VulkanImage |
Public Member Functions | |
GPUDisplayBackendVulkan () | |
~GPUDisplayBackendVulkan () override | |
uint32_t | DepthBits () override |
![]() | |
GPUDisplayBackend () | |
virtual | ~GPUDisplayBackend () |
virtual int32_t | ExtInit () |
virtual bool | CoreProfile () |
virtual uint32_t | drawField () |
virtual void | setQuality () |
int32_t | InitBackend () |
void | ExitBackend () |
backendTypes | backendType () const |
const char * | backendName () const |
virtual size_t | needMultiVBO () |
std::vector< char > | getPixels () |
Protected Member Functions | |
uint32_t | drawVertices (const vboList &v, const drawType t) override |
void | ActivateColor (std::array< float, 4 > &color) override |
void | SetVSync (bool enable) override |
void | setDepthBuffer () override |
bool | backendNeedRedraw () override |
int32_t | InitBackendA () override |
void | ExitBackendA () override |
void | loadDataToGPU (size_t totalVertizes) override |
void | prepareDraw (const hmm_mat4 &proj, const hmm_mat4 &view, bool requestScreenshot, bool toMixBuffer, float includeMixImage) override |
void | finishDraw (bool doScreenshot, bool toMixBuffer, float includeMixImage) override |
void | finishFrame (bool doScreenshot, bool toMixBuffer, float includeMixImage) override |
void | prepareText () override |
void | finishText () override |
void | mixImages (vk::CommandBuffer cmdBuffer, float mixSlaveImage) |
void | setMixDescriptor (int32_t descriptorIndex, int32_t imageIndex) |
void | pointSizeFactor (float factor) override |
void | lineWidthFactor (float factor) override |
void | resizeScene (uint32_t width, uint32_t height) override |
float | getYFactor () const override |
int32_t | getMaxMSAA () const override |
double | checkDevice (vk::PhysicalDevice device, const std::vector< const char * > &reqDeviceExtensions) |
vk::Extent2D | chooseSwapExtent (const vk::SurfaceCapabilitiesKHR &capabilities) |
void | transitionImageLayout (vk::CommandBuffer commandBuffer, vk::Image image, vk::Format format, vk::ImageLayout oldLayout, vk::ImageLayout newLayout) |
VulkanBuffer | createBuffer (size_t size, const void *srcData=nullptr, vk::BufferUsageFlags type=vk::BufferUsageFlagBits::eVertexBuffer, int32_t deviceMemory=1) |
void | writeToBuffer (VulkanBuffer &buffer, size_t size, const void *srcData) |
void | clearBuffer (VulkanBuffer &buffer) |
VulkanImage | createImage (uint32_t sizex, uint32_t sizey, const void *srcData=nullptr, size_t srcSize=0, vk::Format format=vk::Format::eR8G8B8A8Srgb) |
void | writeToImage (VulkanImage &image, const void *srcData, size_t srcSize) |
void | clearImage (VulkanImage &image) |
void | clearVertexBuffers () |
void | startFillCommandBuffer (vk::CommandBuffer &commandBuffer, uint32_t imageIndex, bool toMixBuffer=false) |
void | endFillCommandBuffer (vk::CommandBuffer &commandBuffer) |
vk::CommandBuffer | getSingleTimeCommandBuffer () |
void | submitSingleTimeCommandBuffer (vk::CommandBuffer commandBuffer) |
void | readImageToPixels (vk::Image image, vk::ImageLayout layout, std::vector< char > &pixels) |
void | downsampleToFramebuffer (vk::CommandBuffer &commandBuffer) |
void | updateSwapChainDetails (const vk::PhysicalDevice &device) |
void | updateFontTextureDescriptor () |
void | createDevice () |
void | createShaders () |
void | createTextureSampler () |
void | createCommandBuffers () |
void | createSemaphoresAndFences () |
void | createUniformLayoutsAndBuffers () |
void | createSwapChain (bool forScreenshot=false, bool forMixing=false) |
void | createOffscreenBuffers (bool forScreenshot=false, bool forMixing=false) |
void | createPipeline () |
void | clearDevice () |
void | clearShaders () |
void | clearTextureSampler () |
void | clearCommandBuffers () |
void | clearSemaphoresAndFences () |
void | clearUniformLayoutsAndBuffers () |
void | clearOffscreenBuffers () |
void | clearSwapChain () |
void | clearPipeline () |
void | recreateRendering (bool forScreenshot=false, bool forMixing=false) |
void | needRecordCommandBuffers () |
void | addFontSymbol (int32_t symbol, int32_t sizex, int32_t sizey, int32_t offsetx, int32_t offsety, int32_t advance, void *data) override |
void | initializeTextDrawing () override |
void | OpenGLPrint (const char *s, float x, float y, float *color, float scale) override |
![]() | |
float | getDownsampleFactor (bool screenshot=false) |
void | fillIndirectCmdBuffer () |
bool | smoothFont () |
Additional Inherited Members | |
![]() | |
enum | drawType { POINTS = 0 , LINES = 1 , LINE_STRIP = 2 } |
enum | backendTypes { TYPE_INVALID = -1 , TYPE_OPENGL = 0 , TYPE_VULKAN = 1 } |
typedef std::tuple< uint32_t, uint32_t, int32_t > | vboList |
![]() | |
static GPUDisplayBackend * | getBackend (const char *type) |
Definition at line 28 of file GPUDisplayBackendVulkan.h.
GPUDisplayBackendVulkan::GPUDisplayBackendVulkan | ( | ) |
Definition at line 45 of file GPUDisplayBackendVulkan.cxx.
|
overridedefault |
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1754 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1784 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUDisplayBackend.
Definition at line 1992 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 273 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 112 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1330 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 521 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 495 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1396 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1006 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1242 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 555 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1264 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 771 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 695 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 647 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1336 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1291 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 507 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 339 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1379 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 797 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1025 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 532 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1254 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 702 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 676 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 568 of file GPUDisplayBackendVulkan.cxx.
|
overridevirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1987 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1634 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1468 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1236 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1420 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1550 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1560 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1676 of file GPUDisplayBackendVulkan.cxx.
|
inlineoverrideprotectedvirtual |
Reimplemented from o2::gpu::GPUDisplayBackend.
Definition at line 84 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 154 of file GPUDisplayBackendVulkan.cxx.
|
inlineoverrideprotectedvirtual |
Reimplemented from o2::gpu::GPUDisplayBackend.
Definition at line 83 of file GPUDisplayBackendVulkan.h.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1405 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1797 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1771 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1455 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1717 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1779 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1875 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1762 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1495 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 1667 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1924 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 777 of file GPUDisplayBackendVulkan.cxx.
|
overrideprotectedvirtual |
Reimplemented from o2::gpu::GPUDisplayBackend.
Definition at line 1443 of file GPUDisplayBackendVulkan.cxx.
|
inlineoverrideprotectedvirtual |
Implements o2::gpu::GPUDisplayBackend.
Definition at line 68 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 658 of file GPUDisplayBackendVulkan.cxx.
|
inlineoverrideprotectedvirtual |
Reimplemented from o2::gpu::GPUDisplayBackend.
Definition at line 67 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 1210 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 167 of file GPUDisplayBackendVulkan.cxx.
|
protected |
|
protected |
Definition at line 1857 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 147 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1271 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 1356 of file GPUDisplayBackendVulkan.cxx.
|
protected |
Definition at line 164 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 174 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 175 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 178 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 176 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 177 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 179 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 165 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 162 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 210 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 170 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 171 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 172 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 168 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 169 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 136 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 191 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 188 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 138 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 184 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 211 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 149 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 133 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 197 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 196 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 198 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 201 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 159 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 160 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 161 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 167 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 131 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 139 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 202 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 180 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 166 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 194 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 185 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 135 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 206 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 183 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 151 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 212 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 214 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 148 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 205 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 144 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 137 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 153 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 154 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 158 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 142 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 181 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 155 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 156 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 157 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 147 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 152 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 216 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 209 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 140 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 141 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 143 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 132 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 204 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 145 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 146 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 199 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 182 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 200 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 187 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 186 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 189 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 190 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 193 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 207 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 150 of file GPUDisplayBackendVulkan.h.
|
protected |
Definition at line 208 of file GPUDisplayBackendVulkan.h.