Skip to main content
Version: 0.9.0 (next)

Peer Management

Typedefs Index​

typedefvoid(* qar_peer_update_callback_t)(QarPeerSpec *handle, void *user_state)

Callback invoked when a peer spec changes. More...

Functions Index​

static QarResultqar_peer_spec_get_app_custom_peer_info (QarPeerSpec *handle, char *out_buffer, size_t buffer_size)

Get custom peer info string (application-defined). More...

static QarResultqar_peer_spec_get_app_state (QarPeerSpec *handle, QarAppState *out_state)

Get application state for this peer. More...

static QarResultqar_peer_spec_get_app_version (QarPeerSpec *handle, char *out_buffer, size_t buffer_size)

Get application version string. More...

static QarResultqar_peer_spec_get_display_name (QarPeerSpec *handle, char *out_buffer, size_t buffer_size)

Get display name string into provided buffer. More...

static QarResultqar_peer_spec_get_id (QarPeerSpec *handle, QarPeerId *out_id)

Get peer id from spec. More...

static QarResultqar_peer_spec_get_room_tag (QarPeerSpec *handle, char *out_buffer, size_t buffer_size)

Get current room tag string. More...

static QarResultqar_peer_spec_get_version_id (QarPeerSpec *handle, char *out_buffer, size_t buffer_size)

Get internal version id string. More...

static voidqar_peer_spec_handle_destroy (QarPeerSpec *handle)

Destroy a peer spec handle. More...

static boolqar_peer_spec_handle_is_valid (QarPeerSpec *handle)

Check if a peer spec handle is valid. More...

static QarResultqar_peer_spec_is_target_app (QarPeerSpec *handle, bool *out_is_target_app)

Whether this peer is a target app: a device or viewer that shows rendered content (a headset, the Android streamer, a visualizer receiver). More...

static QarResultqar_peer_subscribe_updates (QarSession *session, qar_peer_update_callback_t callback, void *user_state, QarCancelToken *token)

Subscribe for asynchronous peer spec updates. More...

static QarResultqar_peer_update_display_name (QarSession *session, const char *name)

Update current peer's display name. More...

static QarResultqar_query_peer_specs (QarSession *session, QarPeerSpec **out_handles, size_t handles_buffer_size, size_t *out_handles_written)

Enumerate peer specs into user-provided array. More...

static QarResultqar_query_peer_specs_count (QarSession *session, size_t *out_count)

Query number of known peer specs. More...

static QarResultqar_session_get_my_spec (const QarSession *session, QarPeerSpec **out_handle)

Get spec describing the current device/peer of a session. More...

Typedefs​

qar_peer_update_callback_t​

typedef void(* qar_peer_update_callback_t)(QarPeerSpec *handle, void *user_state)

Callback invoked when a peer spec changes.

Definition at line 2865 of file qar_streaming.h.

Functions​

qar_peer_spec_get_app_custom_peer_info()​

QarResult qar_peer_spec_get_app_custom_peer_info (QarPeerSpec * handle, char * out_buffer, size_t buffer_size)
inline static

Get custom peer info string (application-defined).

Definition at line 2811 of file qar_streaming.h.

qar_peer_spec_get_app_state()​

QarResult qar_peer_spec_get_app_state (QarPeerSpec * handle, QarAppState * out_state)
inline static

Get application state for this peer.

Definition at line 2816 of file qar_streaming.h.

qar_peer_spec_get_app_version()​

QarResult qar_peer_spec_get_app_version (QarPeerSpec * handle, char * out_buffer, size_t buffer_size)
inline static

Get application version string.

Definition at line 2807 of file qar_streaming.h.

qar_peer_spec_get_display_name()​

QarResult qar_peer_spec_get_display_name (QarPeerSpec * handle, char * out_buffer, size_t buffer_size)
inline static

Get display name string into provided buffer.

Definition at line 2802 of file qar_streaming.h.

qar_peer_spec_get_id()​

QarResult qar_peer_spec_get_id (QarPeerSpec * handle, QarPeerId * out_id)
inline static

Get peer id from spec.

Definition at line 2799 of file qar_streaming.h.

qar_peer_spec_get_room_tag()​

QarResult qar_peer_spec_get_room_tag (QarPeerSpec * handle, char * out_buffer, size_t buffer_size)
inline static

Get current room tag string.

Definition at line 2822 of file qar_streaming.h.

qar_peer_spec_get_version_id()​

QarResult qar_peer_spec_get_version_id (QarPeerSpec * handle, char * out_buffer, size_t buffer_size)
inline static

Get internal version id string.

Definition at line 2818 of file qar_streaming.h.

qar_peer_spec_handle_destroy()​

void qar_peer_spec_handle_destroy (QarPeerSpec * handle)
inline static

Destroy a peer spec handle.

Definition at line 2796 of file qar_streaming.h.

qar_peer_spec_handle_is_valid()​

bool qar_peer_spec_handle_is_valid (QarPeerSpec * handle)
inline static

Check if a peer spec handle is valid.

Definition at line 2794 of file qar_streaming.h.

qar_peer_spec_is_target_app()​

QarResult qar_peer_spec_is_target_app (QarPeerSpec * handle, bool * out_is_target_app)
inline static

Whether this peer is a target app: a device or viewer that shows rendered content (a headset, the Android streamer, a visualizer receiver).

See "Basic flow" at the top of this header for how a source application uses it to find the targets it renders for.

Parameters
handle

Peer spec handle.

out_is_target_app

Receives true for a target app, false for anything else (a hub, a source application, pipeline infrastructure).

Returns

Success, or QAR_STATUS_LOGIC_ERROR for an invalid handle or a null output.

Definition at line 2839 of file qar_streaming.h.

qar_peer_subscribe_updates()​

QarResult qar_peer_subscribe_updates (QarSession * session, qar_peer_update_callback_t callback, void * user_state, QarCancelToken * token)
inline static

Subscribe for asynchronous peer spec updates.

The push form of qar_query_peer_specs(), and the way to learn that a peer invited with qar_session_invite_target_app() has joined and reached QAR_APP_STATE_RUNNING.

Parameters
token

Required; cancelling or destroying it ends the subscription and waits for a running callback, see Ending a subscription.

Definition at line 2879 of file qar_streaming.h.

qar_peer_update_display_name()​

QarResult qar_peer_update_display_name (QarSession * session, const char * name)
inline static

Update current peer's display name.

Definition at line 2863 of file qar_streaming.h.

qar_query_peer_specs()​

QarResult qar_query_peer_specs (QarSession * session, QarPeerSpec ** out_handles, size_t handles_buffer_size, size_t * out_handles_written)
inline static

Enumerate peer specs into user-provided array.

Size the array with qar_query_peer_specs_count(). The list also contains this process' own peer; qar_session_get_my_spec() identifies it. Match qar_peer_spec_get_id() against the id qar_session_invite_target_app() returned to find an invited peer, and read qar_peer_spec_get_app_state() to see whether it is ready.

Definition at line 2855 of file qar_streaming.h.

qar_query_peer_specs_count()​

QarResult qar_query_peer_specs_count (QarSession * session, size_t * out_count)
inline static

Query number of known peer specs.

Definition at line 2845 of file qar_streaming.h.

qar_session_get_my_spec()​

QarResult qar_session_get_my_spec (const QarSession * session, QarPeerSpec ** out_handle)
inline static

Get spec describing the current device/peer of a session.

Definition at line 2842 of file qar_streaming.h.


Generated via doxygen2docusaurus 2.2.1 by Doxygen 1.9.8.