Olive
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Public Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
VSTHost Class Reference

#include <vsthost.h>

Inheritance diagram for VSTHost:
Effect

Public Member Functions

 VSTHost (Clip *c, const EffectMeta *em)
 
 ~VSTHost ()
 
void process_audio (double timecode_start, double timecode_end, quint8 *samples, int nb_bytes, int channel_count)
 
void custom_load (QXmlStreamReader &stream)
 
void save (QXmlStreamWriter &stream)
 
- Public Member Functions inherited from Effect
 Effect (Clip *c, const EffectMeta *em)
 
 ~Effect ()
 
void AddRow (EffectRow *row)
 
EffectRowrow (int i)
 
int row_count ()
 
EffectGizmoadd_gizmo (int type)
 
EffectGizmogizmo (int i)
 
int gizmo_count ()
 
bool IsEnabled ()
 
bool IsExpanded ()
 
virtual void refresh ()
 
virtual EffectPtr copy (Clip *c)
 
void copy_field_keyframes (EffectPtr e)
 
virtual void load (QXmlStreamReader &stream)
 
void load_from_string (const QByteArray &s)
 
QByteArray save_to_string ()
 
bool is_open ()
 
void open ()
 
void close ()
 
bool is_glsl_linked ()
 
virtual void startEffect ()
 
virtual void endEffect ()
 
int Flags ()
 
void SetFlags (int flags)
 
int getIterations ()
 
void setIterations (int i)
 
virtual void process_image (double timecode, uint8_t *input, uint8_t *output, int size)
 
virtual void process_shader (double timecode, GLTextureCoords &, int iteration)
 
virtual void process_coords (double timecode, GLTextureCoords &coords, int data)
 
virtual GLuint process_superimpose (double timecode)
 
virtual void gizmo_draw (double timecode, GLTextureCoords &coords)
 
void gizmo_move (EffectGizmo *sender, int x_movement, int y_movement, double timecode, bool done)
 
void gizmo_world_to_screen ()
 
bool are_gizmos_enabled ()
 
template<typename T >
randomNumber ()
 

Private Slots

void show_interface (bool show)
 
void uncheck_show_button ()
 
void change_plugin ()
 

Private Member Functions

void loadPlugin ()
 
void freePlugin ()
 
bool configurePluginCallbacks ()
 
void startPlugin ()
 
void stopPlugin ()
 
void resumePlugin ()
 
void suspendPlugin ()
 
bool canPluginDo (char *canDoString)
 
void processAudio (long numFrames)
 
void CreateDialogIfNull ()
 
void send_data_cache_to_plugin ()
 

Private Attributes

FileFieldfile_field
 
ButtonFieldshow_interface_btn
 
dispatcherFuncPtr dispatcher
 
AEffectplugin
 
float ** inputs
 
float ** outputs
 
QDialog * dialog
 
QByteArray data_cache
 
QLibrary modulePtr
 

Additional Inherited Members

- Public Types inherited from Effect
enum  VideoEffectFlags { ShaderFlag = 0x1, CoordsFlag = 0x2, SuperimposeFlag = 0x4, ImageFlag = 0x8 }
 
- Public Slots inherited from Effect
void FieldChanged ()
 
void SetEnabled (bool b)
 
void SetExpanded (bool e)
 
- Signals inherited from Effect
void EnabledChanged (bool)
 
- Static Public Member Functions inherited from Effect
static EffectPtr Create (Clip *c, const EffectMeta *em)
 
static const EffectMetaGetInternalMeta (int internal_id, int type)
 
- Public Attributes inherited from Effect
Clipparent_clip
 
const EffectMetameta
 
int id
 
QString name
 
const char * ffmpeg_filter
 
- Protected Member Functions inherited from Effect
virtual bool AlwaysUpdate ()
 
- Protected Attributes inherited from Effect
QOpenGLShaderProgram * glslProgram
 
QString vertPath
 
QString fragPath
 
QImage img
 
QOpenGLTexture * texture
 

Constructor & Destructor Documentation

VSTHost::VSTHost ( Clip c,
const EffectMeta em 
)
VSTHost::~VSTHost ( )

Member Function Documentation

bool VSTHost::canPluginDo ( char *  canDoString)
private
void VSTHost::change_plugin ( )
privateslot
bool VSTHost::configurePluginCallbacks ( )
private
void VSTHost::CreateDialogIfNull ( )
private
void VSTHost::custom_load ( QXmlStreamReader &  stream)
virtual

Reimplemented from Effect.

void VSTHost::freePlugin ( )
private
void VSTHost::loadPlugin ( )
private
void VSTHost::process_audio ( double  timecode_start,
double  timecode_end,
quint8 *  samples,
int  nb_bytes,
int  channel_count 
)
virtual

Reimplemented from Effect.

void VSTHost::processAudio ( long  numFrames)
private
void VSTHost::resumePlugin ( )
private
void VSTHost::save ( QXmlStreamWriter &  stream)
virtual

Reimplemented from Effect.

void VSTHost::send_data_cache_to_plugin ( )
private
void VSTHost::show_interface ( bool  show)
privateslot
void VSTHost::startPlugin ( )
private
void VSTHost::stopPlugin ( )
private
void VSTHost::suspendPlugin ( )
private
void VSTHost::uncheck_show_button ( )
privateslot

Member Data Documentation

QByteArray VSTHost::data_cache
private
QDialog* VSTHost::dialog
private
dispatcherFuncPtr VSTHost::dispatcher
private
FileField* VSTHost::file_field
private
float** VSTHost::inputs
private
QLibrary VSTHost::modulePtr
private
float** VSTHost::outputs
private
AEffect* VSTHost::plugin
private
ButtonField* VSTHost::show_interface_btn
private

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