15#ifndef LIBCARNA_GLOBAL_H_6014714286
16#define LIBCARNA_GLOBAL_H_6014714286
23#if defined( LIBCARNA_EXPORT )
24# if defined( _MSC_VER )
25# define LIBCARNA __declspec( dllexport )
26# pragma warning( disable : 4251 )
28# define LIBCARNA __attribute__( ( visibility( "default" ) ) )
33# if defined( _MSC_VER )
34# define LIBCARNA __declspec( dllimport )
39#if defined( NO_OVERRIDE_KEYWORD )
62 class AssertionFailure;
75 class GeometryFeature;
79 class IndexBufferBase;
80 class LibCarnaException;
82 class ManagedMeshBase;
83 class ManagedMeshInterface;
84 class ManagedTexture3D;
85 class ManagedTexture3DInterface;
88 class MeshRenderingMixin;
92 class NormalMap3DTexture;
95 class ProjectionControl;
100 class RenderStageListener;
101 class RenderStageSequence;
107 class ShaderCompilationError;
110 class ShaderUniformBase;
112 class SpatialMovement;
114 struct VertexAttribute;
115 class VertexBufferBase;
118 struct VertexPosition;
121 template<
typename AssociatedObjectType >
class Aggregation;
122 template<
typename AssociatedObjectType >
class Association;
123 template<
typename BufferedVectorComponentType,
typename BufferType = std::vector< BufferedVectorComponentType > >
124 class BufferedNormalMap3D;
125 template<
typename VoxelType,
typename BufferType = std::vector< VoxelType > >
class BufferedIntensityVolume;
126 template<
typename BufferedVectorFieldType >
struct BufferedVectorFieldFormat;
127 template<
typename BufferedVectorFieldType >
class BufferedVectorFieldTexture;
128 template<
typename AssociatedObjectType >
class Composition;
129 template<
typename RenderableCompare >
class GeometryStage;
130 template<
typename SegmentIntensityVolumeType,
typename SegmentNormalsVolumeType >
class VolumeGrid;
131 template<
typename SegmentIntensityVolumeType,
typename SegmentNormalsVolumeType >
class VolumeSegment;
132 template<
typename IndexType >
class IndexBuffer;
133 template<
typename VertexType,
typename IndexType >
class Mesh;
134 template<
typename VertexType,
typename IndexType >
class ManagedMesh;
135 template<
typename VertexType >
class MeshFactory;
136 template<
typename RenderableCompare >
class MeshRenderingStage;
137 template<
typename RenderableCompare >
class RenderQueue;
138 template<
typename VertexType >
class VertexBuffer;
139 template<
typename ValueType >
class ShaderUniform;
140 template<
typename ValueType >
struct ShaderUniformType;
141 template<
typename InstanceType >
class Singleton;
142 template<
unsigned int dimension >
class Texture;
167 template<
typename VectorType >
class Ray;
168 template<
typename ValueType >
class VectorField;
169 template<
typename T >
class Span;
170 template<
typename VectorType,
typename ScalarType =
typename VectorType::Scalar >
class RayPlaneHitTest;
207 class PointMarkerHelper;
208 class DefaultRenderStageOrder;
209 class VolumeGridHelperBase;
211 template<
typename RenderStageOrder = DefaultRenderStageOrder >
class FrameRendererHelper;
212 template<
typename SegmentIntensityVolumeType,
typename SegmentNormalsVolumeType =
void >
class VolumeGridHelper;
Represents an association.
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.
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< uint16_t > IntensityVolumeUInt16
Defines 16bit intensity volume.
BufferedIntensityVolume< uint8_t > IntensityVolumeUInt8
Defines 8bit intensity volume.