12 #ifndef MIPSTAGE_H_6014714286 13 #define MIPSTAGE_H_6014714286 16 #include <Carna/Carna.h> 68 const std::unique_ptr< Details > pimpl;
76 const static unsigned int ROLE_INTENSITIES = 0;
81 explicit MIPStage(
unsigned int geometryType );
90 virtual void reshape(
base::FrameRenderer& fr,
unsigned int width,
unsigned int height )
override;
92 virtual void renderPass
100 void ascendLayer(
const MIPLayer& layer );
105 void appendLayer(
MIPLayer* layer );
116 std::size_t layersCount()
const;
121 MIPLayer& layer( std::size_t layerIndex );
125 const MIPLayer& layer( std::size_t layerIndex )
const;
134 virtual void createVolumeSamplers(
const std::function<
void(
unsigned int,
base::Sampler* ) >& registerSampler )
override;
138 virtual const std::string& uniformName(
unsigned int role )
const override;
140 virtual void configureShader()
override;
155 #endif // MIPSTAGE_H_6014714286 Defines logic for rendering frames from given scenes.
Maintains an OpenGL shader program. Realizes the RAII-idiom.
Invokes the rendering stages of the frame renderer successively.
Renders maximum intensity projections of volume geometries in the scene.
Maintains an OpenGL texture sampler object. This class realizes the RAII-idiom.
Defines abstract base class for rendering stages that render volume geometries in the scene...
Defines an intensity range and the way it is visualized by a maximum intensity projection.
Eigen::Matrix< float, 4, 4, Eigen::ColMajor > Matrix4f
Defines matrix.
Defines a rendering viewport. The viewport is a property of the current OpenGL context.
Represents a Geometry object that has been queued into a RenderQueue. The object's model-view transfo...
Defines Carna::presets::VolumeRenderingStage.