Blue Brain BioExplorer
core::engine::ospray::OSPRayEngine Class Reference

#include <OSPRayEngine.h>

Inheritance diagram for core::engine::ospray::OSPRayEngine:
Collaboration diagram for core::engine::ospray::OSPRayEngine:

Public Member Functions

 OSPRayEngine (ParametersManager &parametersManager)
 
 ~OSPRayEngine ()
 
void commit () final
 Commits changes to the engine. This includes scene modifications, camera modifications and renderer modifications. More...
 
Vector2ui getMinimumFrameSize () const final
 Returns the minimum frame size in pixels supported by this engine. More...
 
FrameBufferPtr createFrameBuffer (const std::string &name, const Vector2ui &frameSize, FrameBufferFormat frameBufferFormat) const final
 Factory method to create an engine-specific framebuffer. More...
 
ScenePtr createScene (AnimationParameters &animationParameters, GeometryParameters &geometryParameters, VolumeParameters &volumeParameters, FieldParameters &fieldParameters) const final
 Factory method to create an engine-specific scene. More...
 
CameraPtr createCamera () const final
 Factory method to create an engine-specific camera. More...
 
RendererPtr createRenderer (const AnimationParameters &animationParameters, const RenderingParameters &renderingParameters) const final
 Factory method to create an engine-specific renderer. More...
 
- Public Member Functions inherited from core::Engine
virtual PLATFORM_API void preRender ()
 Executes engine-specific pre-render operations. More...
 
virtual PLATFORM_API void postRender ()
 Executes engine-specific post-render operations. More...
 
PLATFORM_API Engine (ParametersManager &parametersManager)
 Engine Constructor. More...
 
virtual PLATFORM_API ~Engine ()=default
 
PLATFORM_API void render ()
 Renders the current scene and populates the frame buffer accordingly. More...
 
PLATFORM_API ScenegetScene ()
 Returns the scene. More...
 
PLATFORM_API FrameBuffergetFrameBuffer ()
 Returns the frame buffer. More...
 
PLATFORM_API const CameragetCamera () const
 Returns the camera. More...
 
PLATFORM_API CameragetCamera ()
 
PLATFORM_API RenderergetRenderer ()
 Returns the renderer. More...
 
PLATFORM_API void setKeepRunning (bool keepRunning)
 Sets a flag to continue or stop rendering. More...
 
PLATFORM_API bool getKeepRunning () const
 Returns a boolean indicating whether the user wants to continue rendering. More...
 
PLATFORM_API StatisticsgetStatistics ()
 Returns statistics information. More...
 
PLATFORM_API bool continueRendering () const
 Returns a boolean indicating whether render calls shall be continued based on current accumulation settings. More...
 
PLATFORM_API const auto & getParametersManager () const
 Returns the parameter manager. More...
 
PLATFORM_API void addFrameBuffer (FrameBufferPtr frameBuffer)
 Adds a frame buffer to the list to be filled during rendering. More...
 
PLATFORM_API void removeFrameBuffer (FrameBufferPtr frameBuffer)
 Removes a frame buffer from the list of buffers that are filled during rendering. More...
 
PLATFORM_API const std::vector< FrameBufferPtr > & getFrameBuffers () const
 Returns all registered frame buffers that are used during rendering. More...
 
PLATFORM_API void clearFrameBuffers ()
 Clears all frame buffers. More...
 
PLATFORM_API void resetFrameBuffers ()
 Resets all frame buffers. More...
 
PLATFORM_API void setRendererType (const std::string &name)
 Adds a new renderer type with optional properties. More...
 
PLATFORM_API void addRendererType (const std::string &name, const PropertyMap &properties={})
 Adds a new renderer type with optional properties. More...
 
PLATFORM_API const stringsgetRendererTypes () const
 Returns all renderer types. More...
 
PLATFORM_API void addCameraType (const std::string &name, const PropertyMap &properties={})
 Adds a new camera type with optional properties. More...
 

Additional Inherited Members

- Public Attributes inherited from core::Engine
PLATFORM_API std::function< void()> triggerRender {[] {}}
 Callback when a new frame shall be triggered. Currently called by event plugins Deflect and Rockets. More...
 
- Protected Attributes inherited from core::Engine
std::string _rendererType {RENDERER_PROPERTY_TYPE_BASIC}
 
ParametersManager_parametersManager
 
ScenePtr _scene
 
CameraPtr _camera
 
RendererPtr _renderer
 
std::vector< FrameBufferPtr_frameBuffers
 
Statistics _statistics
 
strings _rendererTypes
 
bool _keepRunning {true}
 

Detailed Description

OSPRay implementation of the ray-tracing engine.

Definition at line 36 of file OSPRayEngine.h.

Constructor & Destructor Documentation

◆ OSPRayEngine()

core::engine::ospray::OSPRayEngine::OSPRayEngine ( ParametersManager parametersManager)

Definition at line 48 of file OSPRayEngine.cpp.

◆ ~OSPRayEngine()

core::engine::ospray::OSPRayEngine::~OSPRayEngine ( )

Definition at line 107 of file OSPRayEngine.cpp.

Member Function Documentation

◆ commit()

void core::engine::ospray::OSPRayEngine::commit ( )
finalvirtual

Commits changes to the engine. This includes scene modifications, camera modifications and renderer modifications.

Reimplemented from core::Engine.

Definition at line 117 of file OSPRayEngine.cpp.

◆ createCamera()

CameraPtr core::engine::ospray::OSPRayEngine::createCamera ( ) const
finalvirtual

Factory method to create an engine-specific camera.

Returns
CameraPtr The created camera.

Implements core::Engine.

Definition at line 200 of file OSPRayEngine.cpp.

◆ createFrameBuffer()

FrameBufferPtr core::engine::ospray::OSPRayEngine::createFrameBuffer ( const std::string &  name,
const Vector2ui frameSize,
FrameBufferFormat  frameBufferFormat 
) const
finalvirtual

Factory method to create an engine-specific framebuffer.

Parameters
nameThe name of the frame buffer.
frameSizeThe size of the frame buffer.
frameBufferFormatThe frame buffer format.
Returns
FrameBufferPtr The created frame buffer.

Implements core::Engine.

Definition at line 188 of file OSPRayEngine.cpp.

◆ createRenderer()

RendererPtr core::engine::ospray::OSPRayEngine::createRenderer ( const AnimationParameters animationParameters,
const RenderingParameters renderingParameters 
) const
finalvirtual

Factory method to create an engine-specific renderer.

Parameters
animationParametersThe animation parameters.
renderingParametersThe rendering parameters.
Returns
RendererPtr The created renderer.

Implements core::Engine.

Definition at line 205 of file OSPRayEngine.cpp.

◆ createScene()

ScenePtr core::engine::ospray::OSPRayEngine::createScene ( AnimationParameters animationParameters,
GeometryParameters geometryParameters,
VolumeParameters volumeParameters,
FieldParameters fieldParameters 
) const
finalvirtual

Factory method to create an engine-specific scene.

Parameters
animationParametersThe animation parameters.
geometryParametersThe geometry parameters.
volumeParametersThe volume parameters.
Returns
ScenePtr The created scene.

Implements core::Engine.

Definition at line 194 of file OSPRayEngine.cpp.

◆ getMinimumFrameSize()

Vector2ui core::engine::ospray::OSPRayEngine::getMinimumFrameSize ( ) const
finalvirtual

Returns the minimum frame size in pixels supported by this engine.

Returns
Vector2ui The minimum frame size.

Implements core::Engine.

Definition at line 136 of file OSPRayEngine.cpp.


The documentation for this class was generated from the following files: