Lumiverse  2.5
A framework for creating lighting control applications
Classes | Namespaces | Enumerations
SimulationAnimationPatch.h File Reference

Subclass of ArnoldPatch to render frames of an animation. More...

#include "LumiverseCoreConfig.h"
#include "../lib/libjson/libjson.h"
#include "SimulationPatch.h"
#include "ArnoldMemoryFrameManager.h"
#include "ArnoldFileFrameManager.h"
#include <thread>
#include <chrono>
#include <iostream>
Include dependency graph for SimulationAnimationPatch.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Lumiverse::FrameDeviceInfo
 The state info for worker thread. More...
 
class  Lumiverse::SimulationAnimationPatch
 A subclass of ArnoldPatch. Instead of interrupting the worker thread every time a new rendering task is received, this class keeps all requests in a queue. A worker thread grasps tasks and dumps frame buffer to a ArnoldFrameManager. More...
 

Namespaces

 Lumiverse
 Contains all core Lumiverse functions and variables.
 

Enumerations

enum  Lumiverse::SimulationAnimationMode { INTERACTIVE, RECORDING, RENDERING, STOPPED }
 Four working modes of SimulationAnimationPatch. INTERACTIVE: Patch renders the latest sent frame with preview sampling rate (camera). RECORDING: Patch renders the preview scene with similar behavior as INTERACTIVE, and it also creates a duplicate for each frame, which is used later for rendering. RENDERING: Renders the frames with rendering sampling rate. STOPPED: Patch doesn't respond to any input. This state is usually used for playing video.
 

Detailed Description

Subclass of ArnoldPatch to render frames of an animation.