For Register DSP models, current implementation of protocol crate uses several
traits with ad-hoc methods to cache, update, and parse for parameters, while it is
it is possible to unify the traits. It is convenient since it is enough to maintain single
interface. This patchset is for the purpose.
Takashi Sakamoto (24):
protocols/motu: add a trait for specification of Register DSP
protocols/motu: implement trait to cache and update mixer return
parameters in Register DSP models
runtime/motu: use trait implementation to operate mixer return
parameters in Register DSP models
protocols/motu: implement trait to cache, update, and parse mixer
output parameters in Register DSP models
runtime/motu: use trait implementations to operate mixer output
parameters in Register DSP models
protocols/motu: implement trait to cache, update, and parse output
parameters in Register DSP models
runtime/motu: use trait implementation to operate output parameters in
Register DSP models
protocols/motu: implement trait to cache, update, and parse mixer
monaural source parameters in Register DSP models
runtime/motu: use trait implementation to operate mixer monaural
source parameters in Register DSP models
protocols/motu: implement trait to cache, update, and parse line input
parameters in Register DSP models
runtime/motu: use trait implementations to operate line input
parameters
protocols/motu: implement trait to cache, update, and parse monaural
input parameters in Register DSP models
runtime/motu: use trait implementations to operate monaural input
parameters in Register DSP models
protocols/motu: implement trait to cache, update, and parse mixer
stereo source parameters in Register DSP models
runtime/motu: use trait implementations to operate mixer stereo source
parameters in Register DSP models
protocols/motu: implement trait to cache, update, and parse mixer
stereo input parameters in Register DSP models
runtime/motu: use trait implementations to operate stereo input
parameters in Register DSP models
protocols/motu: implement trait to update and parse meter parameters
in Register DSP models
runtime/motu: use trait implementations to operate meter parameters in
Register DSP models
protocols/motu: implement trait to update meter output target
parameters in Register DSP models
runtime/motu: use trait implementations to operate meter output target
parameters in Register DSP models
protocols/motu: implement trait to parse phone assignment parameters
in Register DSP models
runtime/motu: use trait implementation to parse image and event for
phone parameters in Register DSP models
runtime/motu: use card interface instead of mixer interface for phone
control
protocols/motu/src/register_dsp.rs | 2075 +++++++++++++------------
protocols/motu/src/version_2.rs | 76 +-
protocols/motu/src/version_3.rs | 30 +-
runtime/motu/src/audioexpress.rs | 9 +-
runtime/motu/src/common_ctls.rs | 2 +-
runtime/motu/src/f828mk2.rs | 21 +-
runtime/motu/src/f896hd.rs | 18 +-
runtime/motu/src/f8pre.rs | 6 +-
runtime/motu/src/h4pre.rs | 9 +-
runtime/motu/src/register_dsp_ctls.rs | 900 ++++++-----
runtime/motu/src/traveler.rs | 21 +-
runtime/motu/src/ultralite.rs | 6 +-
12 files changed, 1683 insertions(+), 1490 deletions(-)
For Register DSP models, current implementation of protocol crate uses several traits with ad-hoc methods to cache, update, and parse for parameters, while it is it is possible to unify the traits. It is convenient since it is enough to maintain single interface. This patchset is for the purpose.