FAST  3.2.0
Framework for Heterogeneous Medical Image Computing and Visualization
VolumeRenderer.hpp
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace fast {
6 
7 class VolumeRenderer : public Renderer {
8  public:
9  typedef std::shared_ptr<VolumeRenderer> pointer;
11  protected:
12  virtual void draw(Matrix4f perspectiveMatrix, Matrix4f viewingMatrix, float zNear, float zFar, bool mode2D) = 0;
14  uint m_FBO = 0;
16  cl::Image2D textureToCLimage(uint textureID, int width, int height, OpenCLDevice::pointer device, bool depth);
17  cl::ImageGL textureToCLimageInterop(uint textureID, int width, int height, OpenCLDevice::pointer device, bool depth);
18  std::tuple<uint, uint> resizeOpenGLTexture(int sourceFBO, int sourceTextureColor, int sourceTextureDepth, Vector2i gridSize, int width, int height);
19 };
20 
21 }
fast::ExecutionDevice::pointer
std::shared_ptr< ExecutionDevice > pointer
Definition: ExecutionDevice.hpp:11
fast::VolumeRenderer::textureToCLimage
cl::Image2D textureToCLimage(uint textureID, int width, int height, OpenCLDevice::pointer device, bool depth)
fast::Renderer
Definition: Renderer.hpp:14
fast::VolumeRenderer::~VolumeRenderer
~VolumeRenderer()
fast::VolumeRenderer::resizeOpenGLTexture
std::tuple< uint, uint > resizeOpenGLTexture(int sourceFBO, int sourceTextureColor, int sourceTextureDepth, Vector2i gridSize, int width, int height)
fast
Definition: AffineTransformation.hpp:7
fast::VolumeRenderer
Definition: VolumeRenderer.hpp:7
fast::VolumeRenderer::pointer
std::shared_ptr< VolumeRenderer > pointer
Definition: VolumeRenderer.hpp:9
fast::VolumeRenderer::m_FBO
uint m_FBO
Definition: VolumeRenderer.hpp:14
fast::VolumeRenderer::m_texture
uint m_texture
Definition: VolumeRenderer.hpp:15
Renderer.hpp
fast::VolumeRenderer::textureToCLimageInterop
cl::ImageGL textureToCLimageInterop(uint textureID, int width, int height, OpenCLDevice::pointer device, bool depth)
uint
unsigned int uint
Definition: DataTypes.hpp:16
fast::VolumeRenderer::draw
virtual void draw(Matrix4f perspectiveMatrix, Matrix4f viewingMatrix, float zNear, float zFar, bool mode2D)=0
fast::VolumeRenderer::VolumeRenderer
VolumeRenderer()