mirror of
https://github.com/onyx-and-iris/voicemeeter.git
synced 2024-11-25 14:20:50 +00:00
common embedded methods defined as iremote struct.
This commit is contained in:
parent
751200951b
commit
a07df8f7b8
@ -20,7 +20,7 @@ type t_bus interface {
|
|||||||
// bus represents a bus channel
|
// bus represents a bus channel
|
||||||
// embeds channel struct
|
// embeds channel struct
|
||||||
type bus struct {
|
type bus struct {
|
||||||
channel
|
iRemote
|
||||||
}
|
}
|
||||||
|
|
||||||
// String implements the stringer interface
|
// String implements the stringer interface
|
||||||
@ -86,7 +86,7 @@ type physicalBus struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func newPhysicalBus(i int, k *kind) t_bus {
|
func newPhysicalBus(i int, k *kind) t_bus {
|
||||||
pb := physicalBus{bus{channel{"bus", i, *k}}}
|
pb := physicalBus{bus{iRemote{"bus", i, k}}}
|
||||||
return t_bus(&pb)
|
return t_bus(&pb)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -95,6 +95,6 @@ type virtualBus struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func newVirtualBus(i int, k *kind) t_bus {
|
func newVirtualBus(i int, k *kind) t_bus {
|
||||||
vb := virtualBus{bus{channel{"bus", i, *k}}}
|
vb := virtualBus{bus{iRemote{"bus", i, k}}}
|
||||||
return t_bus(&vb)
|
return t_bus(&vb)
|
||||||
}
|
}
|
||||||
|
@ -1,65 +0,0 @@
|
|||||||
package voicemeeter
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
)
|
|
||||||
|
|
||||||
type channel struct {
|
|
||||||
identifier string
|
|
||||||
index int
|
|
||||||
kind kind
|
|
||||||
}
|
|
||||||
|
|
||||||
// getter_bool returns the value of a boolean parameter
|
|
||||||
func (c *channel) getter_bool(p string) bool {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
return getParameterFloat(param) == 1
|
|
||||||
}
|
|
||||||
|
|
||||||
// setter_bool sets the value of a boolean parameter
|
|
||||||
func (c *channel) setter_bool(p string, v bool) {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
var value float32
|
|
||||||
if v {
|
|
||||||
value = 1
|
|
||||||
} else {
|
|
||||||
value = 0
|
|
||||||
}
|
|
||||||
setParameterFloat(param, float32(value))
|
|
||||||
}
|
|
||||||
|
|
||||||
// getter_int returns the value of an int parameter p
|
|
||||||
func (c *channel) getter_int(p string) int {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
return int(getParameterFloat(param))
|
|
||||||
}
|
|
||||||
|
|
||||||
// setter_int sets the value v of an int parameter p
|
|
||||||
func (c *channel) setter_int(p string, v int) {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
setParameterFloat(param, float32(v))
|
|
||||||
}
|
|
||||||
|
|
||||||
// getter_float returns the value of an int parameter p
|
|
||||||
func (c *channel) getter_float(p string) float64 {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
return getParameterFloat(param)
|
|
||||||
}
|
|
||||||
|
|
||||||
// setter_float sets the value v of an int parameter p
|
|
||||||
func (c *channel) setter_float(p string, v float32) {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
setParameterFloat(param, float32(v))
|
|
||||||
}
|
|
||||||
|
|
||||||
// getter_string returns the value of a string parameter p
|
|
||||||
func (c *channel) getter_string(p string) string {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
return getParameterString(param)
|
|
||||||
}
|
|
||||||
|
|
||||||
// setter_string sets the value v of a string parameter p
|
|
||||||
func (c *channel) setter_string(p, v string) {
|
|
||||||
param := fmt.Sprintf("%s[%d].%s", c.identifier, c.index, p)
|
|
||||||
setParameterString(param, v)
|
|
||||||
}
|
|
70
voicemeeter/iremote.go
Normal file
70
voicemeeter/iremote.go
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
package voicemeeter
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
)
|
||||||
|
|
||||||
|
// iRemote provides a set of common forwarding methods
|
||||||
|
type iRemote struct {
|
||||||
|
_identifier string
|
||||||
|
index int
|
||||||
|
kind *kind
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *iRemote) identifier() string {
|
||||||
|
return c._identifier
|
||||||
|
}
|
||||||
|
|
||||||
|
// getter_bool returns the value of a boolean parameter
|
||||||
|
func (c *iRemote) getter_bool(p string) bool {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
return getParameterFloat(param) == 1
|
||||||
|
}
|
||||||
|
|
||||||
|
// setter_bool sets the value of a boolean parameter
|
||||||
|
func (c *iRemote) setter_bool(p string, v bool) {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
var value float32
|
||||||
|
if v {
|
||||||
|
value = 1
|
||||||
|
} else {
|
||||||
|
value = 0
|
||||||
|
}
|
||||||
|
setParameterFloat(param, float32(value))
|
||||||
|
}
|
||||||
|
|
||||||
|
// getter_int returns the value of an int parameter p
|
||||||
|
func (c *iRemote) getter_int(p string) int {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
return int(getParameterFloat(param))
|
||||||
|
}
|
||||||
|
|
||||||
|
// setter_int sets the value v of an int parameter p
|
||||||
|
func (c *iRemote) setter_int(p string, v int) {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
setParameterFloat(param, float32(v))
|
||||||
|
}
|
||||||
|
|
||||||
|
// getter_float returns the value of an int parameter p
|
||||||
|
func (c *iRemote) getter_float(p string) float64 {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
return getParameterFloat(param)
|
||||||
|
}
|
||||||
|
|
||||||
|
// setter_float sets the value v of an int parameter p
|
||||||
|
func (c *iRemote) setter_float(p string, v float32) {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
setParameterFloat(param, float32(v))
|
||||||
|
}
|
||||||
|
|
||||||
|
// getter_string returns the value of a string parameter p
|
||||||
|
func (c *iRemote) getter_string(p string) string {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
return getParameterString(param)
|
||||||
|
}
|
||||||
|
|
||||||
|
// setter_string sets the value v of a string parameter p
|
||||||
|
func (c *iRemote) setter_string(p, v string) {
|
||||||
|
param := fmt.Sprintf("%s[%d].%s", c.identifier(), c.index, p)
|
||||||
|
setParameterString(param, v)
|
||||||
|
}
|
@ -30,7 +30,7 @@ type t_strip interface {
|
|||||||
// strip represents a strip channel
|
// strip represents a strip channel
|
||||||
// embeds channel struct
|
// embeds channel struct
|
||||||
type strip struct {
|
type strip struct {
|
||||||
channel
|
iRemote
|
||||||
}
|
}
|
||||||
|
|
||||||
// implement stringer interface in fmt
|
// implement stringer interface in fmt
|
||||||
@ -106,7 +106,7 @@ type physicalStrip struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func newPhysicalStrip(i int, k *kind) t_strip {
|
func newPhysicalStrip(i int, k *kind) t_strip {
|
||||||
ps := physicalStrip{strip{channel{"strip", i, *k}}}
|
ps := physicalStrip{strip{iRemote{"strip", i, k}}}
|
||||||
return t_strip(&ps)
|
return t_strip(&ps)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -155,7 +155,7 @@ type virtualStrip struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func newVirtualStrip(i int, k *kind) t_strip {
|
func newVirtualStrip(i int, k *kind) t_strip {
|
||||||
vs := virtualStrip{strip{channel{"strip", i, *k}}}
|
vs := virtualStrip{strip{iRemote{"strip", i, k}}}
|
||||||
return t_strip(&vs)
|
return t_strip(&vs)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user