12#ifndef CARNA_GLOBAL_H_6014714286
13#define CARNA_GLOBAL_H_6014714286
15#if defined( CARNA_EXPORT )
16# if defined( _MSC_VER )
17# define CARNA_LIB __declspec( dllexport )
18# pragma warning( disable : 4251 )
20# define CARNA_LIB __attribute__( ( visibility( "default" ) ) )
25# if defined( _MSC_VER )
26# define CARNA_LIB __declspec( dllimport )
31#if defined( NO_OVERRIDE_KEYWORD )
55 class AssertionFailure;
69 class GeometryFeature;
71 class IndexBufferBase;
73 class ManagedMeshBase;
74 class ManagedMeshInterface;
75 class MeshRenderingStageBase;
77 class ProjectionControl;
86 class ShaderCompilationError;
90 class ShaderUniformBase;
92 class SpatialMovement;
93 class ManagedTexture3D;
94 class ManagedTexture3DInterface;
100 struct VertexPosition;
101 struct ColoredVertex;
102 struct VertexAttribute;
103 class VertexBufferBase;
106 class NormalMap3DTexture;
108 class RenderStageSequence;
109 class RenderStageListener;
112 template<
typename AssociatedObjectType >
class Aggregation;
113 template<
typename AssociatedObjectType >
class Association;
114 template<
typename BufferedVectorComponentType,
typename BufferType = std::vector< BufferedVectorComponentType > >
115 class BufferedNormalMap3D;
116 template<
typename VoxelType,
typename BufferType = std::vector< VoxelType > >
class BufferedIntensityVolume;
117 template<
typename VoxelType,
typename BufferType = std::vector< VoxelType > >
class BufferedHUVolume;
118 template<
typename BufferedVectorFieldType >
struct BufferedVectorFieldFormat;
119 template<
typename BufferedVectorFieldType >
class BufferedVectorFieldTexture;
120 template<
typename AssociatedObjectType >
class Composition;
121 template<
typename RenderableCompare >
class GeometryStage;
122 template<
typename SegmentIntensityVolumeType,
typename SegmentNormalsVolumeType >
class VolumeGrid;
123 template<
typename SegmentIntensityVolumeType,
typename SegmentNormalsVolumeType >
class VolumeSegment;
124 template<
typename IndexType >
class IndexBuffer;
125 template<
typename VertexType,
typename IndexType >
class Mesh;
126 template<
typename VertexType,
typename IndexType >
class ManagedMesh;
127 template<
typename VertexType >
class MeshFactory;
128 template<
typename RenderableCompare >
class MeshRenderingStage;
129 template<
typename RenderableCompare >
class RenderQueue;
130 template<
typename VertexType >
class VertexBuffer;
131 template<
typename ValueType >
class ShaderUniform;
132 template<
typename ValueType >
struct ShaderUniformType;
133 template<
typename InstanceType >
class Singleton;
134 template<
unsigned int dimension >
class Texture;
170 template<
typename VectorType >
class Ray;
171 template<
typename ValueType >
class VectorField;
172 template<
typename T >
class Span;
173 template<
typename VectorType,
typename ScalarType =
typename VectorType::Scalar >
class RayPlaneHitTest;
216 template<
typename SegmentIntensityVolumeType,
typename SegmentNormalsVolumeType =
void >
class VolumeGridHelper;
Represents an association.
Defines default rendering stages order used by FrameRendererHelper.
Adds rendering stages to a base::FrameRenderer object according to RenderStageOrder.
Simplifies the creation and maintenance of point markers.
Defines type-parameters-independent VolumeGridHelper base interface.
Computes the partitioning of volumetric data and the corresponding normal map. Also creates scene nod...
Implements base::CameraControl, rotates the camera around itself and allows completely free camera mo...
Implements base::CameraControl, rotates the camera around its parent node. The camera movement is bou...
Defines rendering stage that combines two other renderings either by putting them next to each other ...
Renders cutting planes of volume geometries in the scene.
Renders digital radiograph reconstructs of volume geometries in the scene.
Performs direct volume renderings of the volume geometries in the scene.
Defines an intensity range and the way it is visualized by a maximum intensity projection.
Renders maximum intensity projections of volume geometries in the scene.
Implements a simple interface for mapping frame coordinates to base::Mesh objects.
Renders geometry that is actually depth-occluded. The occluded geometry is rendered with reduced opac...
Controls orthogonal projection matrices, that induce box-shaped visible volume, and base::Camera obje...
Controls projection matrices that induce frustum-shaped visible volume.
Implements rendering stage that renders transparent meshes.
Defines abstract base class for rendering stages that render volume geometries in the scene.
BufferedNormalMap3D< int8_t > NormalMap3DInt8
Defines 8bit signed integer BufferedNormalMap3D.
BufferedIntensityVolume< uint8_t > IntensityVolumeUInt8
Defines 8bit intensity volume.
BufferedHUVolume< uint16_t > HUVolumeUInt16
Defines 16bit unsigned integer HU volume data.
BufferedIntensityVolume< uint16_t > IntensityVolumeUInt16
Defines 16bit intensity volume.