/[svn]/linuxsampler/trunk/src/engines/gig/InstrumentScriptVM.h
ViewVC logotype

Annotation of /linuxsampler/trunk/src/engines/gig/InstrumentScriptVM.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2600 - (hide annotations) (download) (as text)
Sat Jun 7 00:16:03 2014 UTC (9 years, 10 months ago) by schoenebeck
File MIME type: text/x-c++hdr
File size: 1423 byte(s)
* Implemented built-in instrument script function "set_controller()".
* Fixed built-in script functions "ignore_event()" and
  "ignore_controller()".
* Added extended instrument script VM for the Gigasampler/GigaStudio format
  sampler engine, which extends the general instrument script VM with Giga
  format specific variables and functions.
* Giga format instrument scripts: added built-in script int constant
  variables $GIG_DIM_CHANNEL, $GIG_DIM_LAYER, $GIG_DIM_VELOCITY,
  $GIG_DIM_AFTERTOUCH, $GIG_DIM_RELEASE, $GIG_DIM_KEYBOARD,
  $GIG_DIM_ROUNDROBIN, $GIG_DIM_RANDOM, $GIG_DIM_SMARTMIDI,
  $GIG_DIM_ROUNDROBINKEY, $GIG_DIM_MODWHEEL, $GIG_DIM_BREATH,
  $GIG_DIM_FOOT, $GIG_DIM_PORTAMENTOTIME, $GIG_DIM_EFFECT1,
  $GIG_DIM_EFFECT2, $GIG_DIM_GENPURPOSE1, $GIG_DIM_GENPURPOSE2,
  $GIG_DIM_GENPURPOSE3, $GIG_DIM_GENPURPOSE4, $GIG_DIM_SUSTAIN,
  $GIG_DIM_PORTAMENTO, $GIG_DIM_SOSTENUTO, $GIG_DIM_SOFT,
  $GIG_DIM_GENPURPOSE5, $GIG_DIM_GENPURPOSE6, $GIG_DIM_GENPURPOSE7,
  $GIG_DIM_GENPURPOSE8, $GIG_DIM_EFFECT1DEPTH, $GIG_DIM_EFFECT2DEPTH,
  $GIG_DIM_EFFECT3DEPTH, $GIG_DIM_EFFECT4DEPTH, $GIG_DIM_EFFECT5DEPTH.
* Giga format instrument scripts: Implemented built-in script function
  "gig_set_dim_zone(event_id, dimension, zone)", which allows to override
  dimension zone(s) for new voices.
* Bumped version (1.0.0.svn45).

1 schoenebeck 2600 /*
2     * Copyright (c) 2014 Christian Schoenebeck
3     *
4     * http://www.linuxsampler.org
5     *
6     * This file is part of LinuxSampler and released under the same terms.
7     * See README file for details.
8     */
9    
10     #ifndef LS_GIG_INSTRUMENT_SCRIPT_VM_H
11     #define LS_GIG_INSTRUMENT_SCRIPT_VM_H
12    
13     #include "../common/InstrumentScriptVM.h"
14     #include "InstrumentScriptVMFunctions.h"
15    
16     namespace LinuxSampler { namespace gig {
17    
18     /** @brief Real-time instrument script virtual machine (Giga format).
19     *
20     * Extends the common sampler format independent InstrumentScriptVM with
21     * Giga format specific built-in script variables and functions.
22     *
23     * Note that this class is currently re-entrant safe, but @b not thread
24     * safe! See also comments of base class ScriptVM regarding this issue.
25     */
26     class InstrumentScriptVM : public LinuxSampler::InstrumentScriptVM {
27     public:
28     InstrumentScriptVM();
29     VMFunction* functionByName(const String& name) OVERRIDE;
30     //std::map<String,VMIntRelPtr*> builtInIntVariables() OVERRIDE;
31     //std::map<String,VMInt8Array*> builtInIntArrayVariables() OVERRIDE;
32     std::map<String,int> builtInConstIntVariables() OVERRIDE;
33     protected:
34     InstrumentScriptVMFunction_gig_set_dim_zone m_fnGigSetDimZone;
35    
36     friend class InstrumentScriptVMFunction_gig_set_dim_zone;
37     };
38    
39     }} // namespace LinuxSampler::gig
40    
41     #endif // LS_GIG_INSTRUMENT_SCRIPT_VM_H

  ViewVC Help
Powered by ViewVC