OpenShot Library | libopenshot  0.1.1
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
openshot::ReaderBase Class Referenceabstract

This abstract class is the base class, used by all readers in libopenshot. More...

#include <ReaderBase.h>

Inheritance diagram for openshot::ReaderBase:
openshot::ChunkReader openshot::DecklinkReader openshot::DummyReader openshot::FFmpegReader openshot::FrameMapper openshot::ImageReader openshot::QtImageReader openshot::TextReader openshot::Timeline

Public Member Functions

virtual void Close ()=0
 Close the reader (and any resources it was consuming) More...
 
void DisplayInfo ()
 Display file information in the standard output stream (stdout) More...
 
void DrawFrameOnScene (string path, long _graphics_scene_address)
 Test method to draw a bitmap on a Qt QGraphicsScene. More...
 
virtual CacheGetCache ()=0
 Get the cache object used by this reader (note: not all readers use cache) More...
 
virtual tr1::shared_ptr< FrameGetFrame (long int number)=0
 
virtual bool IsOpen ()=0
 A thread safe version of GetFrame. More...
 
virtual string Json ()=0
 Get and Set JSON methods. More...
 
virtual Json::Value JsonValue ()=0
 Generate Json::JsonValue for this object. More...
 
virtual string Name ()=0
 Return the type name of the class. More...
 
virtual void Open ()=0
 Open the reader (and start consuming resources, such as images or video files) More...
 
 ReaderBase ()
 Constructor for the base reader, where many things are initialized. More...
 
virtual void SetJson (string value)=0 throw (InvalidJSON)
 Load JSON string into this object. More...
 
virtual void SetJsonValue (Json::Value root)=0
 Load Json::JsonValue into this object. More...
 

Public Attributes

bool debug
 
ReaderInfo info
 Information about the current media file. More...
 

Protected Member Functions

void AppendDebugMethod (string method_name, string arg1_name, float arg1_value, string arg2_name, float arg2_value, string arg3_name, float arg3_value, string arg4_name, float arg4_value, string arg5_name, float arg5_value, string arg6_name, float arg6_value)
 Append debug information as JSON. More...
 

Protected Attributes

CriticalSection getFrameCriticalSection
 Section lock for multiple threads. More...
 
CriticalSection processingCriticalSection
 

Detailed Description

This abstract class is the base class, used by all readers in libopenshot.

Readers are types of classes that read video, audio, and image files, and return openshot::Frame objects. The only requirements for a 'reader', are to derive from this base class, implement the GetFrame method, and call the InitFileInfo() method.

Definition at line 95 of file ReaderBase.h.

Constructor & Destructor Documentation

ReaderBase::ReaderBase ( )

Constructor for the base reader, where many things are initialized.

Definition at line 33 of file ReaderBase.cpp.

Member Function Documentation

void ReaderBase::AppendDebugMethod ( string  method_name,
string  arg1_name,
float  arg1_value,
string  arg2_name,
float  arg2_value,
string  arg3_name,
float  arg3_value,
string  arg4_name,
float  arg4_value,
string  arg5_name,
float  arg5_value,
string  arg6_name,
float  arg6_value 
)
protected

Append debug information as JSON.

Definition at line 67 of file ReaderBase.cpp.

virtual void openshot::ReaderBase::Close ( )
pure virtual
void ReaderBase::DisplayInfo ( )

Display file information in the standard output stream (stdout)

Definition at line 113 of file ReaderBase.cpp.

void ReaderBase::DrawFrameOnScene ( string  path,
long  _graphics_scene_address 
)

Test method to draw a bitmap on a Qt QGraphicsScene.

Definition at line 279 of file ReaderBase.cpp.

virtual Cache* openshot::ReaderBase::GetCache ( )
pure virtual
virtual tr1::shared_ptr<Frame> openshot::ReaderBase::GetFrame ( long int  number)
pure virtual

This method is required for all derived classes of ReaderBase, and returns the openshot::Frame object, which contains the image and audio information for that frame of video.

Returns
The requested frame of video
Parameters
[in]numberThe frame number that is requested.

Implemented in openshot::FFmpegReader, openshot::Timeline, openshot::FrameMapper, openshot::ChunkReader, openshot::TextReader, openshot::DecklinkReader, openshot::QtImageReader, openshot::ImageReader, and openshot::DummyReader.

virtual bool openshot::ReaderBase::IsOpen ( )
pure virtual
virtual string openshot::ReaderBase::Json ( )
pure virtual
Json::Value ReaderBase::JsonValue ( )
pure virtual
virtual string openshot::ReaderBase::Name ( )
pure virtual
virtual void openshot::ReaderBase::Open ( )
pure virtual
virtual void openshot::ReaderBase::SetJson ( string  value)
throw (InvalidJSON
)
pure virtual
void ReaderBase::SetJsonValue ( Json::Value  root)
pure virtual

Member Data Documentation

bool openshot::ReaderBase::debug

Enable or disable debug output. Output will display on the standard output, and you can optionally invoke the OutputDebugJSON() method, which will format the debug output as JSON.

Definition at line 117 of file ReaderBase.h.

CriticalSection openshot::ReaderBase::getFrameCriticalSection
protected

Section lock for multiple threads.

Definition at line 99 of file ReaderBase.h.

ReaderInfo openshot::ReaderBase::info

Information about the current media file.

Definition at line 120 of file ReaderBase.h.

CriticalSection openshot::ReaderBase::processingCriticalSection
protected

Definition at line 100 of file ReaderBase.h.


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