View Source X32Remote.Supervisor (x32_remote v0.1.0)
A supervisor that starts a named ExOSC.Client, and an X32Remote.Session subscribed to it.
Normally, this is used by X32Remote to create the session that will be used
by X32Remote.Mixer. However, you can also use this in your own code,
either to start that instance manually, or to conveniently start a supervised
client + session pair.
Link to this section Summary
Functions
Returns a specification to start this supervisor under another supervisor.
Starts a supervisor that runs a named ExOSC.Client and a
X32Remote.Session subscribed to it.
Link to this section Types
@type option() :: {:ip, :inet.ip_address()} | {:port, :inet.port_number()} | {:client_name, GenServer.name()} | {:session_name, GenServer.name()} | Supervisor.option() | Supervisor.init_option()
Option values used by start_link/1
@type options() :: [option()]
Options used by start_link/1
Link to this section Functions
@spec child_spec(options()) :: Supervisor.child_spec()
Returns a specification to start this supervisor under another supervisor.
See the "Child specification" section in the Supervisor module for more detailed information.
@spec start_link(options()) :: Supervisor.on_start()
Starts a supervisor that runs a named ExOSC.Client and a
X32Remote.Session subscribed to it.
options
Options
:ip(required) — target IP in tuple form:port(required) — target UDP port:name— registered name of the supervisor (default:Elixir.X32Remote.Mixer.Supervisor):client_name— registered name of theExOSC.Clientprocess (default:Elixir.X32Remote.Mixer.Client):session_name— registered name of theX32Remote.Sessionprocess (default:Elixir.X32Remote.Mixer.Session)
This function also accepts all the options accepted by Supervisor.start_link/3,
and all of the name options accept the same values that function does.
The client_name will be passed to X32Remote.Session.start_link/1 as the
client option.
Note that if you use a non-default session_name, the X32Remote.Mixer
convenience module will not be using your supervised client and session.
return-values
Return values
Same as Supervisor.start_link/3.