Loading...
Searching...
No Matches
engine.h
Go to the documentation of this file.
/*
* Copyright (C) 2009, 2010 Hermann Meyer, James Warden, Andreas Degert
* Copyright (C) 2011 Pete Shorthose
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* --------------------------------------------------------------------------
*/
#pragma once
#ifndef SRC_HEADERS_ENGINE_H_
#define SRC_HEADERS_ENGINE_H_
#ifdef GUITARIX_AS_PLUGIN
#define GX_DATA_FOLDER "gx_head/"
#define GX_STYLE_DIR GX_DATA_FOLDER ""
#define GX_FACTORY_DIR GX_DATA_FOLDER "factorysettings"
#define GX_SOUND_DIR GX_DATA_FOLDER "sounds"
#define GX_SOUND_BPB_DIR GX_DATA_FOLDER "sounds/bands"
#define GX_SOUND_BPA_DIR GX_DATA_FOLDER "sounds/amps"
#define GX_BUILDER_DIR GX_DATA_FOLDER ""
#define GX_ICON_DIR GX_DATA_FOLDER ""
#define GX_PIXMAPS_DIR GX_DATA_FOLDER ""
#define GX_FONTS_DIR GX_DATA_FOLDER ""
#define GX_VERSION "0.44.1"
#endif // GUITARIX_AS_PLUGIN
/* system header files */
#include <semaphore.h>
#include <cmath>
#include <ctime>
#include <sstream>
#include <fstream>
#include <iostream>
#include <string>
#include <list>
#include <set>
#include <vector>
#include <map>
#include <algorithm>
#include <sys/stat.h>
#include <boost/format.hpp>
#include <boost/noncopyable.hpp>
#include <boost/thread/mutex.hpp>
#include <glibmm/i18n.h> // NOLINT
#include <glibmm/optioncontext.h> // NOLINT
#include <glibmm/dispatcher.h>
#include <glibmm/miscutils.h>
#include <giomm/file.h>
/* LV2 header files */
#include <lilv/lilv.h>
#include <lv2/presets/presets.h>
#include <lv2/state/state.h>
#include <lv2/urid/urid.h>
#include <lv2/atom/atom.h>
#include <lv2/buf-size/buf-size.h>
#include <lv2/options/options.h>
#include <lv2/uri-map/uri-map.h>
#include <lv2/port-props/port-props.h>
#ifndef GUITARIX_AS_PLUGIN
/* waf generated defines */
#include "../config.h"
#endif // GUITARIX_AS_PLUGIN
// define USE_MIDI_OUT to create a midi output port and
// make the MidiAudioBuffer plugin activatable
// for the UI:
// - menudef.xml: make action MidiOut visible (its commented out)
// - ports.glade: set scrolledwindow5 and label12 to visible
//
//#define USE_MIDI_OUT
// use MIDI control out
#define USE_MIDI_CC_OUT
#ifdef LADSPA_SO
#define gettext(x) dgettext(GETTEXT_PACKAGE, x)
#endif
#ifndef LV2_CORE__enabled
#define LV2_CORE__enabled LV2_CORE_PREFIX "enabled"
#endif
using namespace std;
#include "gx_compiler.h"
/* guitarix declarations */
#include "gx_plugin.h"
#include "gx_logging.h"
#include "gx_system.h"
#include "gx_parameter.h"
#include "ParallelThread.h"
#include "gx_resampler.h"
#include "gx_convolver.h"
#include "gx_pitch_tracker.h"
#include "gx_pluginloader.h"
#include "gx_modulesequencer.h"
#include "gx_json.h"
#ifndef GUITARIX_AS_PLUGIN
#include "gx_jack.h"
#else
#include "gx_jack_wrapper.h"
#endif // GUITARIX_AS_PLUGIN
#include "gx_internal_plugins.h"
#include "gx_neural_plugins.h"
#include "gx_preset.h"
#include "gx_engine.h"
#include "tunerswitcher.h"
#include "ladspaback.h"
#ifdef GUITARIX_AS_PLUGIN
#include <glibmm/i18n.h> // NOLINT
#include <glibmm/optioncontext.h> // NOLINT
#include <glibmm/dispatcher.h>
#include <glibmm/miscutils.h>
#include <giomm/file.h>
#endif // GUITARIX_AS_PLUGIN
#ifdef _WINDOWS
#include <io.h>
#define R_OK 4 /* Test for read permission. */
#define W_OK 2 /* Test for write permission. */
#define X_OK 1 /* execute permission - unsupported in windows*/
#define F_OK 0 /* Test for existence. */
#define access _access
#include <chrono>
#include <thread>
#undef _stat
#endif // _WINDOWS
#endif // SRC_HEADERS_ENGINE_H_
ParallelThread.h
gx_compiler.h
gx_convolver.h
gx_engine.h
gx_internal_plugins.h
gx_jack.h
gx_jack_wrapper.h
gx_json.h
gx_logging.h
gx_modulesequencer.h
gx_neural_plugins.h
gx_parameter.h
gx_pitch_tracker.h
gx_plugin.h
gx_pluginloader.h
gx_preset.h
gx_resampler.h
gx_system.h
ladspaback.h
tunerswitcher.h