PipeWire  0.1.4
pw_data_loop Class Reference

PipeWire rt-loop object. More...

Collaboration diagram for pw_data_loop:

Public Member Functions

struct pw_data_looppw_data_loop_new (struct pw_properties *properties)
 Create a new pw_data_loop. More...
 
void pw_data_loop_destroy (struct pw_data_loop *loop)
 Destroy a data loop. More...
 
int pw_data_loop_start (struct pw_data_loop *loop)
 Start a data loop. More...
 
int pw_data_loop_stop (struct pw_data_loop *loop)
 Stop a data loop. More...
 
bool pw_data_loop_in_thread (struct pw_data_loop *loop)
 Check if we are inside the data loop. More...
 

Data Fields

struct pw_looploop
 
struct spa_hook_list listener_list
 
struct spa_source * event
 
bool running
 
pthread_t thread
 

Detailed Description

PipeWire rt-loop object.

Member Function Documentation

◆ pw_data_loop_destroy()

void pw_data_loop_destroy ( struct pw_data_loop loop)

Destroy a data loop.

Parameters
loopthe data loop to destroy

References event, listener_list, loop, pw_data_loop_stop(), pw_log::pw_log_debug(), pw_loop::pw_loop_destroy(), and pw_loop_destroy_source.

◆ pw_data_loop_in_thread()

bool pw_data_loop_in_thread ( struct pw_data_loop loop)

Check if we are inside the data loop.

Parameters
loopthe data loop to check
Returns
true is the current thread is the data loop thread

References thread.

◆ pw_data_loop_new()

struct pw_data_loop * pw_data_loop_new ( struct pw_properties properties)

Create a new pw_data_loop.

Returns
a newly allocated data loop

References listener_list, loop, pw_log::pw_log_debug(), pw_loop_add_event, and pw_loop::pw_loop_new().

◆ pw_data_loop_start()

int pw_data_loop_start ( struct pw_data_loop loop)

Start a data loop.

Parameters
loopthe data loop to start
Returns
0 if ok, -1 on error

This will start the realtime thread that manages the loop.

References running, and thread.

◆ pw_data_loop_stop()

int pw_data_loop_stop ( struct pw_data_loop loop)

Stop a data loop.

Parameters
loopthe data loop to Stop
Returns
SPA_RESULT_OK

This will stop and join the realtime thread that manages the loop.

References event, loop, pw_loop_signal_event, running, and thread.

Referenced by pw_data_loop_destroy().

Field Documentation

◆ event

struct spa_source* pw_data_loop::event

◆ listener_list

struct spa_hook_list pw_data_loop::listener_list

◆ loop

◆ running

bool pw_data_loop::running

◆ thread

pthread_t pw_data_loop::thread

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