PipeWire 1.4.1
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
System

I/O, clock, polling, timer, and signal interfaces More...

Files

file  system.h
 spa/support/system.h
 

Data Structures

struct  spa_system
 
struct  spa_poll_event
 
struct  spa_system_methods
 

Macros

#define SPA_TYPE_INTERFACE_System   SPA_TYPE_INFO_INTERFACE_BASE "System"
 a collection of core system functions
 
#define SPA_TYPE_INTERFACE_DataSystem   SPA_TYPE_INFO_INTERFACE_BASE "DataSystem"
 
#define SPA_VERSION_SYSTEM   0
 
#define SPA_IO_IN   (1 << 0)
 
#define SPA_IO_OUT   (1 << 2)
 
#define SPA_IO_ERR   (1 << 3)
 
#define SPA_IO_HUP   (1 << 4)
 
#define SPA_FD_CLOEXEC   (1<<0)
 
#define SPA_FD_NONBLOCK   (1<<1)
 
#define SPA_FD_EVENT_SEMAPHORE   (1<<2)
 
#define SPA_FD_TIMER_ABSTIME   (1<<3)
 
#define SPA_FD_TIMER_CANCEL_ON_SET   (1<<4)
 
#define SPA_VERSION_SYSTEM_METHODS   0
 
#define spa_system_ioctl(object, fd, request, ...)
 

Functions

SPA_API_SYSTEM ssize_t spa_system_read (struct spa_system *object, int fd, void *buf, size_t count)
 
SPA_API_SYSTEM ssize_t spa_system_write (struct spa_system *object, int fd, const void *buf, size_t count)
 
SPA_API_SYSTEM int spa_system_close (struct spa_system *object, int fd)
 
SPA_API_SYSTEM int spa_system_clock_gettime (struct spa_system *object, int clockid, struct timespec *value)
 
SPA_API_SYSTEM int spa_system_clock_getres (struct spa_system *object, int clockid, struct timespec *res)
 
SPA_API_SYSTEM int spa_system_pollfd_create (struct spa_system *object, int flags)
 
SPA_API_SYSTEM int spa_system_pollfd_add (struct spa_system *object, int pfd, int fd, uint32_t events, void *data)
 
SPA_API_SYSTEM int spa_system_pollfd_mod (struct spa_system *object, int pfd, int fd, uint32_t events, void *data)
 
SPA_API_SYSTEM int spa_system_pollfd_del (struct spa_system *object, int pfd, int fd)
 
SPA_API_SYSTEM int spa_system_pollfd_wait (struct spa_system *object, int pfd, struct spa_poll_event *ev, int n_ev, int timeout)
 
SPA_API_SYSTEM int spa_system_timerfd_create (struct spa_system *object, int clockid, int flags)
 
SPA_API_SYSTEM int spa_system_timerfd_settime (struct spa_system *object, int fd, int flags, const struct itimerspec *new_value, struct itimerspec *old_value)
 
SPA_API_SYSTEM int spa_system_timerfd_gettime (struct spa_system *object, int fd, struct itimerspec *curr_value)
 
SPA_API_SYSTEM int spa_system_timerfd_read (struct spa_system *object, int fd, uint64_t *expirations)
 
SPA_API_SYSTEM int spa_system_eventfd_create (struct spa_system *object, int flags)
 
SPA_API_SYSTEM int spa_system_eventfd_write (struct spa_system *object, int fd, uint64_t count)
 
SPA_API_SYSTEM int spa_system_eventfd_read (struct spa_system *object, int fd, uint64_t *count)
 
SPA_API_SYSTEM int spa_system_signalfd_create (struct spa_system *object, int signal, int flags)
 
SPA_API_SYSTEM int spa_system_signalfd_read (struct spa_system *object, int fd, int *signal)
 

Detailed Description

I/O, clock, polling, timer, and signal interfaces

Macro Definition Documentation

◆ SPA_TYPE_INTERFACE_System

◆ SPA_TYPE_INTERFACE_DataSystem

◆ SPA_VERSION_SYSTEM

#define SPA_VERSION_SYSTEM   0

◆ SPA_IO_IN

#define SPA_IO_IN   (1 << 0)

◆ SPA_IO_OUT

#define SPA_IO_OUT   (1 << 2)

◆ SPA_IO_ERR

#define SPA_IO_ERR   (1 << 3)

◆ SPA_IO_HUP

#define SPA_IO_HUP   (1 << 4)

◆ SPA_FD_CLOEXEC

#define SPA_FD_CLOEXEC   (1<<0)

◆ SPA_FD_NONBLOCK

#define SPA_FD_NONBLOCK   (1<<1)

◆ SPA_FD_EVENT_SEMAPHORE

#define SPA_FD_EVENT_SEMAPHORE   (1<<2)

◆ SPA_FD_TIMER_ABSTIME

#define SPA_FD_TIMER_ABSTIME   (1<<3)

◆ SPA_FD_TIMER_CANCEL_ON_SET

#define SPA_FD_TIMER_CANCEL_ON_SET   (1<<4)

◆ SPA_VERSION_SYSTEM_METHODS

#define SPA_VERSION_SYSTEM_METHODS   0

◆ spa_system_ioctl

#define spa_system_ioctl ( object,
fd,
request,
... )
Value:
spa_api_method_fast_r(int, -ENOTSUP, spa_system, &object->iface, ioctl, 0, fd, request, ##__VA_ARGS__)
#define spa_api_method_fast_r(rtype, def, type, o, method, version,...)
Definition hook.h:325
Definition system.h:56
struct spa_interface iface
Definition system.h:56

Function Documentation

◆ spa_system_read()

SPA_API_SYSTEM ssize_t spa_system_read ( struct spa_system * object,
int fd,
void * buf,
size_t count )

◆ spa_system_write()

SPA_API_SYSTEM ssize_t spa_system_write ( struct spa_system * object,
int fd,
const void * buf,
size_t count )

◆ spa_system_close()

SPA_API_SYSTEM int spa_system_close ( struct spa_system * object,
int fd )

◆ spa_system_clock_gettime()

SPA_API_SYSTEM int spa_system_clock_gettime ( struct spa_system * object,
int clockid,
struct timespec * value )

◆ spa_system_clock_getres()

SPA_API_SYSTEM int spa_system_clock_getres ( struct spa_system * object,
int clockid,
struct timespec * res )

◆ spa_system_pollfd_create()

SPA_API_SYSTEM int spa_system_pollfd_create ( struct spa_system * object,
int flags )

◆ spa_system_pollfd_add()

SPA_API_SYSTEM int spa_system_pollfd_add ( struct spa_system * object,
int pfd,
int fd,
uint32_t events,
void * data )

◆ spa_system_pollfd_mod()

SPA_API_SYSTEM int spa_system_pollfd_mod ( struct spa_system * object,
int pfd,
int fd,
uint32_t events,
void * data )

◆ spa_system_pollfd_del()

SPA_API_SYSTEM int spa_system_pollfd_del ( struct spa_system * object,
int pfd,
int fd )

◆ spa_system_pollfd_wait()

SPA_API_SYSTEM int spa_system_pollfd_wait ( struct spa_system * object,
int pfd,
struct spa_poll_event * ev,
int n_ev,
int timeout )

◆ spa_system_timerfd_create()

SPA_API_SYSTEM int spa_system_timerfd_create ( struct spa_system * object,
int clockid,
int flags )

◆ spa_system_timerfd_settime()

SPA_API_SYSTEM int spa_system_timerfd_settime ( struct spa_system * object,
int fd,
int flags,
const struct itimerspec * new_value,
struct itimerspec * old_value )

◆ spa_system_timerfd_gettime()

SPA_API_SYSTEM int spa_system_timerfd_gettime ( struct spa_system * object,
int fd,
struct itimerspec * curr_value )

◆ spa_system_timerfd_read()

SPA_API_SYSTEM int spa_system_timerfd_read ( struct spa_system * object,
int fd,
uint64_t * expirations )

◆ spa_system_eventfd_create()

SPA_API_SYSTEM int spa_system_eventfd_create ( struct spa_system * object,
int flags )

◆ spa_system_eventfd_write()

SPA_API_SYSTEM int spa_system_eventfd_write ( struct spa_system * object,
int fd,
uint64_t count )

◆ spa_system_eventfd_read()

SPA_API_SYSTEM int spa_system_eventfd_read ( struct spa_system * object,
int fd,
uint64_t * count )

◆ spa_system_signalfd_create()

SPA_API_SYSTEM int spa_system_signalfd_create ( struct spa_system * object,
int signal,
int flags )

◆ spa_system_signalfd_read()

SPA_API_SYSTEM int spa_system_signalfd_read ( struct spa_system * object,
int fd,
int * signal )