4 #ifndef _ArnoldFileFRAMEMANAGER_H_
5 #define _ArnoldFileFRAMEMANAGER_H_
9 #include "LumiverseCoreConfig.h"
12 #include "../lib/libjson/libjson.h"
24 #include "../lib/libpng/png.h"
34 class ArnoldFileFrameManager :
public ArnoldFrameManager
40 ArnoldFileFrameManager(std::string frame_path,
int fps = 24) :
41 m_frame_path(frame_path), m_prev_frame(-1), m_current(0), m_buffer(NULL),
42 ArnoldFrameManager(fps) { }
47 virtual ~ArnoldFileFrameManager();
53 virtual void dump(time_t time,
float *frame,
size_t width,
size_t height);
58 void saveToFile(
string file,
float *frame,
size_t width,
size_t height);
67 virtual float *getCurrentFrameBuffer();
76 virtual time_t getCurrentTime()
const;
84 virtual time_t getNextTime()
const;
91 virtual bool hasNext()
const;
97 virtual bool isEmpty()
const;
104 virtual size_t getFrameNum()
const;
111 virtual void clear();
118 virtual std::string getType() {
return "ArnoldFileFrameManager"; }
126 bool fileExists(std::string fileName)
const;
128 void deleteFile(std::string fileName)
const;
134 std::string m_frame_path;
Contains functions for logging information to console or file.
Contains all core Lumiverse functions and variables.
Definition: Device.cpp:2
The superclass for all implementation of frame managers.