/[svn]/gigedit/trunk/src/plugin/linuxsamplerplugin.h
ViewVC logotype

Annotation of /gigedit/trunk/src/plugin/linuxsamplerplugin.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3177 - (hide annotations) (download) (as text)
Thu May 11 20:59:46 2017 UTC (6 years, 11 months ago) by schoenebeck
File MIME type: text/x-c++hdr
File size: 2350 byte(s)
* Live mode performance optimization: fixed the editor to be non-responsive
  for a very long time, which happened if changing instrument parameters of
  a very large amount of dimension regions was requested.
* Bumped version (1.0.0.svn45).

1 schoenebeck 1213 /*
2 schoenebeck 3068 * Copyright (C) 2007 - 2017 Andreas Persson
3 schoenebeck 1213 *
4     * This program is free software; you can redistribute it and/or
5     * modify it under the terms of the GNU General Public License as
6     * published by the Free Software Foundation; either version 2, or (at
7     * your option) any later version.
8     *
9     * This program is distributed in the hope that it will be useful, but
10     * WITHOUT ANY WARRANTY; without even the implied warranty of
11     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12     * General Public License for more details.
13     *
14     * You should have received a copy of the GNU General Public License
15     * along with program; see the file COPYING. If not, write to the Free
16     * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
17     * 02110-1301 USA.
18     */
19    
20     #ifndef GIGEDIT_LINUXSAMPLER_PLUGIN_H
21     #define GIGEDIT_LINUXSAMPLER_PLUGIN_H
22    
23 schoenebeck 3068 #ifdef HAVE_CONFIG_H
24     # include <config.h>
25     #endif
26 schoenebeck 1213
27 schoenebeck 3068 #ifdef LIBLINUXSAMPLER_HEADER_FILE
28     # include LIBLINUXSAMPLER_HEADER_FILE(plugins/InstrumentEditor.h)
29     #else
30     # include <linuxsampler/plugins/InstrumentEditor.h>
31     #endif
32 schoenebeck 1213
33 schoenebeck 3068 #ifdef LIBGIG_HEADER_FILE
34     # include LIBGIG_HEADER_FILE(gig.h)
35     #else
36     # include <gig.h>
37     #endif
38 schoenebeck 1322
39 schoenebeck 1656 class LinuxSamplerPlugin : public LinuxSampler::InstrumentEditor {
40 schoenebeck 1213 public:
41     LinuxSamplerPlugin();
42 schoenebeck 1877 virtual int Main(void* pInstrument, String sTypeName, String sTypeVersion); // old LS plugin API entry point
43     virtual int Main(void* pInstrument, String sTypeName, String sTypeVersion, void* pUserData); // new LS plugin API entry point
44 schoenebeck 1213 virtual bool IsTypeSupported(String sTypeName, String sTypeVersion);
45     virtual String Name();
46     virtual String Version();
47     virtual String Description();
48 schoenebeck 1654 virtual ~LinuxSamplerPlugin();
49 schoenebeck 1322
50     private:
51 schoenebeck 1654 void* pApp;
52 schoenebeck 3177 class LSPluginPrivate* priv;
53 schoenebeck 1654
54 schoenebeck 1322 void __onSamplesToBeRemoved(std::list<gig::Sample*> lSamples);
55 schoenebeck 1660 void __onVirtualKeyboardKeyHit(int Key, int Velocity);
56     void __onVirtualKeyboardKeyReleased(int Key, int Velocity);
57 schoenebeck 2689 void __requestSamplerToSwitchInstrument(gig::Instrument* pInstrument);
58 schoenebeck 1656 bool __onPollPeriod();
59 schoenebeck 3177 void __onDimRegionToBeChanged(gig::DimensionRegion* pDimRgn);
60     void __onDimRegionChanged(gig::DimensionRegion* pDimRgn);
61     void __onDimRegionChangedDebounced();
62 schoenebeck 1213 };
63    
64     #endif // GIGEDIT_LINUXSAMPLER_PLUGIN_H

  ViewVC Help
Powered by ViewVC