YAACC - UPNP Client and Server
Loading...
Searching...
No Matches
de.yaacc.yxc.YxcSourceControls Class Reference

Which controls the device's own source offers right now (docs/tech.md, section 12). More...

Collaboration diagram for de.yaacc.yxc.YxcSourceControls:
Collaboration graph

Classes

enum  Control
 

Static Public Member Functions

static boolean ownSourceActive (YxcDeviceState state)
 Whether the device plays a source of its own on its main zone: a network source whose play info is the zone's input, or the tuner (with its play info).
 
static boolean rowMapsToOwnSource (YxcDeviceState state, boolean yaaccActive)
 Whether the row's play / pause / stop buttons work on the device's own source: the device plays one and yaacc has no player on it that plays or is paused (a paused yaacc track keeps the buttons for the UPnP transport, otherwise a press would leave yaacc's queue and the device out of step).
 
static Set< Control > available (YxcDeviceState state, boolean yaaccActive)
 
static Set< Control > available (YxcDeviceState state)
 
static String nextRepeat (YxcPlayInfo info)
 The repeat mode after current in the list the source offers (off, one, all, as listed), null when the list is empty.
 
static String nextShuffle (YxcPlayInfo info)
 The shuffle mode after the current one in the list the source offers, null when the list is empty.
 

Detailed Description

Which controls the device's own source offers right now (docs/tech.md, section 12).

A control is offered only if the source says it can do it: the bits of the play info's attribute (bit 0 play, 1 stop, 2 pause, 3 previous, 4 next; a reading of captured answers: a net radio, which has only play and stop, accepts the other calls with response_code 0 and does nothing), the lists repeat_available and shuffle_available, and for the tuner the band. Pure.

Member Function Documentation

◆ available() [1/2]

static Set< Control > de.yaacc.yxc.YxcSourceControls.available ( YxcDeviceState state)
static
Returns
the controls to offer, empty when the device is off, a client, or plays nothing of its own
Here is the call graph for this function:

◆ available() [2/2]

static Set< Control > de.yaacc.yxc.YxcSourceControls.available ( YxcDeviceState state,
boolean yaaccActive )
static
Returns
the controls to offer on the row: none while yaacc plays or has paused a track on the device (the zone input is then the server input, which counts as a network source, and the controls would act on the device's own queue instead of yaacc's); otherwise those of available(YxcDeviceState)

Referenced by de.yaacc.yxc.YxcSourceControls.available(), de.yaacc.yxc.YxcSourceControls.ownSourceActive(), de.yaacc.yxc.YxcSourceActions.perform(), and de.yaacc.yxc.YxcDeviceState.sameForRow().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nextRepeat()

static String de.yaacc.yxc.YxcSourceControls.nextRepeat ( YxcPlayInfo info)
static

The repeat mode after current in the list the source offers (off, one, all, as listed), null when the list is empty.

An unknown current mode starts at the first one.

Here is the call graph for this function:

◆ ownSourceActive()

static boolean de.yaacc.yxc.YxcSourceControls.ownSourceActive ( YxcDeviceState state)
static

Whether the device plays a source of its own on its main zone: a network source whose play info is the zone's input, or the tuner (with its play info).

The link input and standby are not.

Referenced by de.yaacc.yxc.YxcSourceControls.rowMapsToOwnSource().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: