The cycle counting clock is no longer supported. For backwards
compatibility with scripts, allow the user to request the cycle clock on
the command line, but use the system clock instead.
Cross-ported from jackd1.
Descriptor initialization reduces risk of mismatch between array size
and element initialization. It also improves code readability by
separating the parameter descriptions separate from the code that
composes the enum constraint structures.
As a side effect this commit makes the self-connect-mode constraint
allocated in dedicated memory chunks, like others enum constraints.
It was introduced before the parameter was actually exposed.
The parameter is exposed through a char type in both jackd and
jackdbus, thus a mappnig was required.
This changeset removes the enum and makes the code simpler
at the expense of not allowing arbitrary chars as values.
As it is exposed and used in sessions, it is not arbitrary anyway.
The bug was present in the inital version of the code,
commit 606609f9b5
There was no memory corruption because while
jack_driver_param_value_enum_t is smaller by 72 bytes than
jack_driver_param_constraint_desc_t, for ranges of non-string values,
the last 124 bytes are not used.
The constant was introduced when the mode parameter of the JackEngine
constructor was added in aab13501f4.
Then in 6253344da6 the parameter
was exposed through the control api, but with different default
value.
This commit changes the value to match the default of the control api
parameter.
Downgraded eigen3 and sox version requirements for building iio.
Switched to using IIOMMap to access the IIO subsystem.
Added the overloaded methods for JackIIODriver::Attach, JackIIODriver::Detach, JackIIODriver::Read and JackIIODriver::Write.
Rewrite the JackIIODriver.C code to work properly.