Skip to content

Commit

Permalink
#599 Add "this_fx_index" variable to dynamic FX expressions
Browse files Browse the repository at this point in the history
  • Loading branch information
helgoboss committed Jun 16, 2022
1 parent cf886d5 commit e87d77f
Show file tree
Hide file tree
Showing 2 changed files with 153 additions and 0 deletions.
4 changes: 4 additions & 0 deletions main/src/domain/unresolved_reaper_target.rs
Expand Up @@ -1385,6 +1385,10 @@ impl VirtualChainFx {
let compartment_params = context.params().compartment_params(compartment);
let result = evaluator
.evaluate_with_params_and_vars(compartment_params, |name, args| match name {
"this_fx_index" => {
let fx = context.context().containing_fx();
Some(fx.index() as f64)
}
"tcp_fx_indexes" => {
let i = extract_first_arg_as_positive_integer(args)?;
if chain.is_input_fx() {
Expand Down
149 changes: 149 additions & 0 deletions resources/test-projects/issue-599-this-fx-index.RPP
@@ -0,0 +1,149 @@
<REAPER_PROJECT 0.1 "6.56+dev0425/macOS-arm64" 1655416877
<NOTES 0 2
>
RIPPLE 0
GROUPOVERRIDE 0 0 0
AUTOXFADE 1
ENVATTACH 3
POOLEDENVATTACH 0
MIXERUIFLAGS 11 48
PEAKGAIN 1
FEEDBACK 0
PANLAW 1
PROJOFFS 0 0 0
MAXPROJLEN 0 600
GRID 3199 8 1 8 1 0 0 0
TIMEMODE 1 5 -1 30 0 0 -1
VIDEO_CONFIG 0 0 256
PANMODE 3
CURSOR 0
ZOOM 100 0 0
VZOOMEX 6 0
USE_REC_CFG 0
RECMODE 1
SMPTESYNC 0 30 100 40 1000 300 0 0 1 0 0
LOOP 0
LOOPGRAN 0 4
RECORD_PATH "" ""
<RECORD_CFG
ZXZhdxgAAA==
>
<APPLYFX_CFG
>
RENDER_FILE ""
RENDER_PATTERN ""
RENDER_FMT 0 2 0
RENDER_1X 0
RENDER_RANGE 1 0 0 18 1000
RENDER_RESAMPLE 3 0 1
RENDER_ADDTOPROJ 0
RENDER_STEMS 0
RENDER_DITHER 0
TIMELOCKMODE 1
TEMPOENVLOCKMODE 1
ITEMMIX 1
DEFPITCHMODE 589824 0
TAKELANE 1
SAMPLERATE 44100 0 0
<RENDER_CFG
ZXZhdxgAAA==
>
LOCK 1
<METRONOME 6 2
VOL 0.25 0.125
FREQ 800 1600 1
BEATLEN 4
SAMPLES "" ""
PATTERN 2863311530 2863311529
MULT 1
>
GLOBAL_AUTO -1
TEMPO 120 4 4
PLAYRATE 1 0 0.25 4
SELECTION 0 0
SELECTION2 0 0
MASTERAUTOMODE 0
MASTERTRACKHEIGHT 0 0
MASTERPEAKCOL 16576
MASTERMUTESOLO 0
MASTERTRACKVIEW 0 0.6667 0.5 0.5 -1 -1 -1 0 0 0 -1 -1 0
MASTERHWOUT 0 0 1 0 0 0 0 -1
MASTER_NCH 2 2
MASTER_VOLUME 1 0 -1 -1 1
MASTER_PANMODE 3
MASTER_FX 1
MASTER_SEL 0
<MASTERPLAYSPEEDENV
EGUID {CD69290D-7716-D04B-A411-268E7342FF76}
ACT 0 -1
VIS 0 1 1
LANEHEIGHT 0 0
ARM 0
DEFSHAPE 0 -1 -1
>
<TEMPOENVEX
EGUID {52AEDA32-886B-7D43-956A-5F83317A2AD2}
ACT 1 -1
VIS 1 0 1
LANEHEIGHT 0 0
ARM 0
DEFSHAPE 1 -1 -1
>
<PROJBAY
>
<TRACK {D0ECF297-2B39-8D4C-8868-955780EBC0AA}
NAME ReaLearn
PEAKCOL 16576
BEAT -1
AUTOMODE 0
VOLPAN 1 0 -1 -1 1
MUTESOLO 0 0 0
IPHASE 0
PLAYOFFS 0 1
ISBUS 0 0
BUSCOMP 0 0 0 0 0
SHOWINMIX 1 0.6667 0.5 1 0.5 -1 -1 -1
SEL 0
REC 1 5088 1 0 0 0 0
VU 2
TRACKHEIGHT 0 0 0 0 0 0
INQ 0 0 0 0.5 100 0 0 100
NCHAN 2
FX 1
TRACKID {D0ECF297-2B39-8D4C-8868-955780EBC0AA}
PERF 0
MIDIOUT -1
MAINSEND 1 0
<FXCHAIN
WNDRECT 316 271 611 497
SHOW 0
LASTSEL 1
DOCKED 0
BYPASS 0 0 0
<VST "VSTi: ReaLearn (Helgoboss)" realearn.vst.dylib 0 "" 1751282284<5653546862726C7265616C6561726E00> ""
bHJiaO5e7f4CAAAAAQAAAAAAAAACAAAAAAAAAAAAAADbAQAAAQAAAAAAEAA=
eyJ2ZXJzaW9uIjoiMi4xMy4wLXByZS43IiwiaWQiOiJWTVNQd2VZMiIsImNvbnRyb2xEZXZpY2VJZCI6ImtleWJvYXJkIiwiZGVmYXVsdEdyb3VwIjp7fSwiZGVmYXVs
dENvbnRyb2xsZXJHcm91cCI6e30sIm1hcHBpbmdzIjpbeyJpZCI6IkF2ekdCMVQ4dDl5LWRBWm01OGUzaiIsIm5hbWUiOiIxIiwic291cmNlIjp7ImNhdGVnb3J5Ijoi
a2V5Ym9hcmQiLCJpc1JlZ2lzdGVyZWQiOmZhbHNlLCJpczE0Qml0IjpmYWxzZSwib3NjQXJnSW5kZXgiOjAsImtleXN0cm9rZSI6eyJtb2RpZmllcnMiOjEsImtleSI6
NjV9fSwibW9kZSI6eyJ0eXBlIjoyLCJtYXhTdGVwU2l6ZSI6MC4wNX0sInRhcmdldCI6eyJ0eXBlIjoxMiwiZnhBbmNob3IiOiJkeW5hbWljIiwiZnhFeHByZXNzaW9u
IjoidGhpc19meF9pbmRleCArIDEiLCJ1c2VQcm9qZWN0Ijp0cnVlLCJtb3ZlVmlldyI6dHJ1ZSwic2Vla1BsYXkiOnRydWUsIm9zY0FyZ0luZGV4IjowfX1dfQ==
AFByb2dyYW0gMQAQAAAA
>
PRESETNAME "Program 1"
FLOATPOS 0 0 0 0
FXID {A280567A-30ED-1945-969A-53D2DD5F5CB6}
WAK 0 0
BYPASS 1 0 0
<VST "VSTi: ReaSynth (Cockos)" reasynth.vst.dylib 0 "" 1919251321<5653547265737972656173796E746800> ""
eXNlcu9e7f4AAAAAAgAAAAEAAAAAAAAAAgAAAAAAAABEAAAAAAAAAAAAEAA=
776t3g3wrd6mm8Q7F7fROgAAAAAAAAAAAAAAAM5NAD/pZ4g9AAAAAAAAAD8AAIA/AACAPwAAAD8AAAAAAAAAAAAAAAA=
AAAQAAAA
>
FLOATPOS 0 0 0 0
FXID {27CB341F-08E6-4540-94C3-9A797EE56638}
WAK 0 0
>
>
<EXTENSIONS
>
>

0 comments on commit e87d77f

Please sign in to comment.