Merge pull request #16 from pblivingston/fx-params

Fx params
This commit is contained in:
Onyx and Iris 2025-11-28 02:17:05 +00:00 committed by GitHub
commit 5c623711f7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 82 additions and 0 deletions

View File

@ -17,6 +17,7 @@ Before any major/minor/patch is released all test units will be run to verify th
- Option class
- Device classes
- EQ class
- FX class
## [3.3.0] - 2024-06-29

View File

@ -440,6 +440,21 @@ $vmr.command.Load("path/to/filename.xml")
$vmr.command.RunMacrobuttons()
```
### Fx
The following Fx commands are available:
- Reverb.on: bool
- Reverb.ab: bool
- Delay.on: bool
- Delay.ab: bool
for example:
```powershell
$vmr.fx.reverb.ab = $false
```
### Patch
The following Patch commands are available:

View File

@ -14,6 +14,7 @@
. $PSScriptRoot\recorder.ps1
. $PSScriptRoot\patch.ps1
. $PSScriptRoot\option.ps1
. $PSScriptRoot\fx.ps1
. $PSScriptRoot\profiles.ps1
class Remote {
@ -125,6 +126,7 @@ class RemotePotato : Remote {
[System.Collections.ArrayList]$button
[PSCustomObject]$vban
[Object]$command
[Object]$fx
[Object]$patch
[Object]$option
[Object]$recorder
@ -135,6 +137,7 @@ class RemotePotato : Remote {
$this.button = Make_Buttons
$this.vban = Make_Vban($this)
$this.command = Make_Command($this)
$this.fx = Make_Fx($this)
$this.patch = Make_Patch($this)
$this.option = Make_Option($this)
$this.recorder = Make_Recorder($this)

37
lib/fx.ps1 Normal file
View File

@ -0,0 +1,37 @@
class Fx : IRemote {
[Object]$reverb
[Object]$delay
Fx ([Object]$remote) : base ($remote) {
$this.reverb = [FxReverb]::new($remote)
$this.delay = [FxDelay]::new($remote)
}
[string] identifier () {
return 'Fx'
}
}
class FxReverb : IRemote {
FxReverb ([Object]$remote) : base ($remote) {
AddBoolMembers -PARAMS @('on', 'ab')
}
[string] identifier () {
return 'Fx.Reverb'
}
}
class FxDelay : IRemote {
FxDelay ([Object]$remote) : base ($remote) {
AddBoolMembers -PARAMS @('on', 'ab')
}
[string] identifier () {
return 'Fx.Delay'
}
}
function Make_Fx ([Object]$remote) {
return [Fx]::new($remote)
}

View File

@ -136,6 +136,32 @@ Describe -Tag 'higher', -TestName 'All Higher Tests' {
$vmr.command.lock = $value
}
}
Context 'Fx' -Skip:$ifNotPotato {
Context 'Delay' {
It 'Should set and get Fx.delay.on' {
$vmr.fx.delay.on = $value
$vmr.fx.delay.on | Should -Be $expected
}
It 'Should set and get Fx.delay.ab' {
$vmr.fx.delay.ab = $value
$vmr.fx.delay.ab | Should -Be $expected
}
}
Context 'Reverb' {
It 'Should set and get Fx.reverb.on' {
$vmr.fx.reverb.on = $value
$vmr.fx.reverb.on | Should -Be $expected
}
It 'Should set and get Fx.reverb.ab' {
$vmr.fx.reverb.ab = $value
$vmr.fx.reverb.ab | Should -Be $expected
}
}
}
Context 'Patch' {
It 'Should set and get Patch.insert[$insert]' -Skip:$ifBasic {