thread-loop.h File Reference
Include dependency graph for thread-loop.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

struct | pw_thread_loop_events
| Thread loop events. More...

## Macros

#define | PW_VERSION_THREAD_LOOP_EVENTS 0

## Functions

struct pw_thread_loop * | pw_thread_loop_new (struct pw_loop *loop, const char *name)
| Make a new thread loop with the given name. More...
void | pw_thread_loop_destroy (struct pw_thread_loop *loop)
| Destroy a thread loop. More...
void | pw_thread_loop_add_listener (struct pw_thread_loop *loop, struct spa_hook *listener, const struct pw_thread_loop_events *events, void *data)
| Add an event listener. More...
struct pw_loop * | pw_thread_loop_get_loop (struct pw_thread_loop *loop)
| Get the loop implementation of the thread loop. More...
int | pw_thread_loop_start (struct pw_thread_loop *loop)
| Start the thread loop. More...
void | pw_thread_loop_stop (struct pw_thread_loop *loop)
| Stop the thread loop. More...
void | pw_thread_loop_lock (struct pw_thread_loop *loop)
| Lock the loop. More...
void | pw_thread_loop_unlock (struct pw_thread_loop *loop)
| Unlock the loop. More...
void | pw_thread_loop_wait (struct pw_thread_loop *loop)
| Release the lock and wait until some thread calls pw_thread_loop_signal. More...
int | pw_thread_loop_timed_wait (struct pw_thread_loop *loop, int wait_max_sec)
| Release the lock and wait a maximum of 'wait_max_sec' seconds until some thread calls pw_thread_loop_signal or time out. More...
void | pw_thread_loop_signal (struct pw_thread_loop *loop, bool wait_for_accept)
| Signal all threads waiting with pw_thread_loop_wait. More...
void | pw_thread_loop_accept (struct pw_thread_loop *loop)
| Signal all threads executing pw_thread_loop_signal with wait_for_accept. More...
bool | pw_thread_loop_in_thread (struct pw_thread_loop *loop)
| Check if inside the thread. More...

## Macro Definition Documentation

## PW_VERSION_THREAD_LOOP_EVENTS

#define PW_VERSION_THREAD_LOOP_EVENTS 0

## Function Documentation

## pw_thread_loop_accept()

void pw_thread_loop_accept | ( | struct pw_thread_loop * | loop | ) |

Signal all threads executing pw_thread_loop_signal with wait_for_accept.

## pw_thread_loop_add_listener()

void pw_thread_loop_add_listener | ( | struct pw_thread_loop * | loop,
|  | struct spa_hook * | listener,
|  | const struct pw_thread_loop_events * | events,
|  | void * | data
| ) |  |

Add an event listener.

## pw_thread_loop_destroy()

void pw_thread_loop_destroy | ( | struct pw_thread_loop * | loop | ) |

Destroy a thread loop.

## pw_thread_loop_get_loop()

struct pw_loop* pw_thread_loop_get_loop | ( | struct pw_thread_loop * | loop | ) |

Get the loop implementation of the thread loop.

## pw_thread_loop_in_thread()

bool pw_thread_loop_in_thread | ( | struct pw_thread_loop * | loop | ) |

Check if inside the thread.

## pw_thread_loop_lock()

void pw_thread_loop_lock | ( | struct pw_thread_loop * | loop | ) |

Lock the loop.

This ensures exclusive ownership of the loop

## pw_thread_loop_new()

struct pw_thread_loop* pw_thread_loop_new | ( | struct pw_loop * | loop,
|  | const char * | name
| ) |  |

Make a new thread loop with the given name.

## pw_thread_loop_signal()

void pw_thread_loop_signal | ( | struct pw_thread_loop * | loop,
|  | bool | wait_for_accept
| ) |  |

Signal all threads waiting with pw_thread_loop_wait.

## pw_thread_loop_start()

int pw_thread_loop_start | ( | struct pw_thread_loop * | loop | ) |

Start the thread loop.

## pw_thread_loop_stop()

void pw_thread_loop_stop | ( | struct pw_thread_loop * | loop | ) |

Stop the thread loop.

## pw_thread_loop_timed_wait()

int pw_thread_loop_timed_wait | ( | struct pw_thread_loop * | loop,
|  | int | wait_max_sec
| ) |  |

Release the lock and wait a maximum of 'wait_max_sec' seconds until some thread calls pw_thread_loop_signal or time out.

## pw_thread_loop_unlock()

void pw_thread_loop_unlock | ( | struct pw_thread_loop * | loop | ) |

Unlock the loop.

## pw_thread_loop_wait()

void pw_thread_loop_wait | ( | struct pw_thread_loop * | loop | ) |

Release the lock and wait until some thread calls pw_thread_loop_signal.