1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
====================== DYNAMIC INTERFACE ======================
Interface modules that are specified with `-i' option can be
loadable modules by using dynamic link module.
Place the shared library
interface_<ID>.so
on the SHARED_LIB_PATH directory. In this case <ID> is the interface's
ID that are specified at `-i' option.
TiMidity++ requires to this shared library the following function:
(the <ID> is the same as above)
ControlMode* interface_<ID>_loader(void)
{
ControlMode* ctl;
/* ... */
return ctl;
}
If the dynamic interface that are specified at -i<ID>, TiMidity++
loads interface_<ID>.so at the SHARED_LIB_PATH (this is the macro specified
in the Makefile) and calls a function in the shared library
interface_<ID>_loader().
If a file
interface_<ID>.txt
describing the information about the interface by 1 line is in the
SHARED_LIB_PATH, TiMidity++ displays this information when `-h'
option is specified.
WARNING:
You shouldn't specify the interface you want to build as dynamic link
as enabled in Makefile. TiMidity++ searches its interfaces first from
interfaces statically linked with TiMidity++, and next from dynamic linked
interfaces.
|