ardour
Namespaces | Macros | Functions | Variables
vst_info_file.cc File Reference

Code to manage info files containing cached information about a plugin. e.g. its name, creator etc. More...

#include <iostream>
#include <cassert>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <errno.h>
#include <stdlib.h>
#include <stddef.h>
#include <stdio.h>
#include <string.h>
#include <glib.h>
#include <glib/gstdio.h>
#include <glibmm.h>
#include "pbd/error.h"
#include "ardour/plugin_manager.h"
#include "ardour/rc_configuration.h"
#include "ardour/system_exec.h"
#include "ardour/filesystem_paths.h"
#include "ardour/linux_vst_support.h"
#include "ardour/plugin_types.h"
#include "ardour/vst_info_file.h"

Go to the source code of this file.

Namespaces

 ARDOUR
 

Macros

#define MAX_STRING_LEN   256
 
#define PLUGIN_SCAN_TIMEOUT   (Config->get_vst_scan_timeout())
 
#define EXT_BLACKLIST   ".fsb"
 
#define EXT_ERRORFILE   ".err"
 
#define EXT_INFOFILE   ".fsi"
 
#define PFX_DOTFILE   "."
 

Functions

static string ARDOUR::vstfx_cache_file (const char *dllpath, int personal, const char *ext)
 
static string ARDOUR::vstfx_blacklist_path (const char *dllpath, int personal)
 
static string ARDOUR::vstfx_infofile_path (const char *dllpath, int personal)
 
static string ARDOUR::vstfx_errorfile_path (const char *dllpath, int personal)
 
static void ARDOUR::vstfx_free_info (VSTInfo *info)
 
static void ARDOUR::vstfx_clear_info_list (vector< VSTInfo * > *infos)
 
static char * ARDOUR::read_string (FILE *fp)
 
static bool ARDOUR::read_int (FILE *fp, int *n)
 
static bool ARDOUR::vstfx_load_info_block (FILE *fp, VSTInfo *info)
 
static bool ARDOUR::vstfx_load_info_file (FILE *fp, vector< VSTInfo * > *infos)
 
static void ARDOUR::vstfx_write_info_block (FILE *fp, VSTInfo *info)
 
static void ARDOUR::vstfx_write_info_file (FILE *fp, vector< VSTInfo * > *infos)
 
static bool ARDOUR::vstfx_blacklist_stat (const char *dllpath, int personal)
 
static bool ARDOUR::vstfx_check_blacklist (const char *dllpath)
 
static FILE * ARDOUR::vstfx_blacklist_file (const char *dllpath)
 
static bool ARDOUR::vstfx_blacklist (const char *dllpath)
 
static void ARDOUR::vstfx_un_blacklist (const char *dllpath)
 
static void ARDOUR::vstfx_remove_infofile (const char *dllpath)
 
static char * ARDOUR::vstfx_infofile_stat (const char *dllpath, struct stat *statbuf, int personal)
 
static FILE * ARDOUR::vstfx_infofile_for_read (const char *dllpath)
 
static FILE * ARDOUR::vstfx_infofile_create (const char *dllpath, int personal)
 
static FILE * ARDOUR::vstfx_infofile_for_write (const char *dllpath)
 
static bool ARDOUR::vstfx_get_info_from_file (const char *dllpath, vector< VSTInfo * > *infos)
 
static bool ARDOUR::vstfx_midi_input (VSTState *vstfx)
 
static bool ARDOUR::vstfx_midi_output (VSTState *vstfx)
 
static intptr_t ARDOUR::simple_master_callback (AEffect *, int32_t opcode, int32_t, intptr_t, void *ptr, float)
 
static VSTInfoARDOUR::vstfx_parse_vst_state (VSTState *vstfx)
 
static void ARDOUR::vstfx_info_from_plugin (const char *dllpath, VSTState *vstfx, vector< VSTInfo * > *infos, enum ARDOUR::PluginType type)
 
static void ARDOUR::parse_scanner_output (std::string msg, size_t)
 
static void ARDOUR::set_error_log (const char *dllpath)
 
static void ARDOUR::close_error_log ()
 
static vector< VSTInfo * > * ARDOUR::vstfx_get_info (const char *dllpath, enum ARDOUR::PluginType type, enum VSTScanMode mode)
 
void ARDOUR::vstfx_free_info_list (vector< VSTInfo * > *infos)
 
LIBARDOUR_API std::string ARDOUR::get_personal_vst_blacklist_dir ()
 
LIBARDOUR_API std::string ARDOUR::get_personal_vst_info_cache_dir ()
 

Variables

static int ARDOUR::vstfx_current_loading_id = 0
 
static FILE * ARDOUR::_errorlog_fd = 0
 
static char * ARDOUR::_errorlog_dll = 0
 

Detailed Description

Code to manage info files containing cached information about a plugin. e.g. its name, creator etc.

Definition in file vst_info_file.cc.

Macro Definition Documentation

#define EXT_BLACKLIST   ".fsb"

Definition at line 60 of file vst_info_file.cc.

#define EXT_ERRORFILE   ".err"

Definition at line 61 of file vst_info_file.cc.

#define EXT_INFOFILE   ".fsi"

Definition at line 62 of file vst_info_file.cc.

#define MAX_STRING_LEN   256

Definition at line 55 of file vst_info_file.cc.

#define PFX_DOTFILE   "."

Definition at line 67 of file vst_info_file.cc.

#define PLUGIN_SCAN_TIMEOUT   (Config->get_vst_scan_timeout())

Definition at line 56 of file vst_info_file.cc.