FFmpeg  3.3.8
Data Structures | Macros | Typedefs | Functions
os2threads.h File Reference

os2threads to pthreads wrapper More...

#include <os2.h>
#include <stdlib.h>
#include <sys/builtin.h>
#include <sys/fmutex.h>
#include "libavutil/attributes.h"

Go to the source code of this file.

Data Structures

struct  pthread_t
 
struct  pthread_cond_t
 
union  pthread_once_t
 

Macros

#define INCL_DOS
 
#define PTHREAD_ONCE_INIT   {0, _FMUTEX_INITIALIZER}
 

Typedefs

typedef void pthread_attr_t
 
typedef HMTX pthread_mutex_t
 
typedef void pthread_mutexattr_t
 
typedef void pthread_condattr_t
 

Functions

static void thread_entry (void *arg)
 
static av_always_inline int pthread_create (pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg)
 
static av_always_inline int pthread_join (pthread_t thread, void **value_ptr)
 
static av_always_inline int pthread_mutex_init (pthread_mutex_t *mutex, const pthread_mutexattr_t *attr)
 
static av_always_inline int pthread_mutex_destroy (pthread_mutex_t *mutex)
 
static av_always_inline int pthread_mutex_lock (pthread_mutex_t *mutex)
 
static av_always_inline int pthread_mutex_unlock (pthread_mutex_t *mutex)
 
static av_always_inline int pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *attr)
 
static av_always_inline int pthread_cond_destroy (pthread_cond_t *cond)
 
static av_always_inline int pthread_cond_signal (pthread_cond_t *cond)
 
static av_always_inline int pthread_cond_broadcast (pthread_cond_t *cond)
 
static av_always_inline int pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex)
 
static av_always_inline int pthread_once (pthread_once_t *once_control, void(*init_routine)(void))
 

Detailed Description

os2threads to pthreads wrapper

Definition in file os2threads.h.

Macro Definition Documentation

◆ INCL_DOS

#define INCL_DOS

Definition at line 29 of file os2threads.h.

◆ PTHREAD_ONCE_INIT

#define PTHREAD_ONCE_INIT   {0, _FMUTEX_INITIALIZER}

Definition at line 65 of file os2threads.h.

Typedef Documentation

◆ pthread_attr_t

Definition at line 47 of file os2threads.h.

◆ pthread_mutex_t

typedef HMTX pthread_mutex_t

Definition at line 49 of file os2threads.h.

◆ pthread_mutexattr_t

Definition at line 50 of file os2threads.h.

◆ pthread_condattr_t

Definition at line 58 of file os2threads.h.

Function Documentation

◆ thread_entry()

static void thread_entry ( void arg)
static

Definition at line 67 of file os2threads.h.

Referenced by pthread_create().

◆ pthread_create()

static av_always_inline int pthread_create ( pthread_t thread,
const pthread_attr_t attr,
void *(*)(void *)  start_routine,
void arg 
)
static

◆ pthread_join()

static av_always_inline int pthread_join ( pthread_t  thread,
void **  value_ptr 
)
static

◆ pthread_mutex_init()

static av_always_inline int pthread_mutex_init ( pthread_mutex_t mutex,
const pthread_mutexattr_t attr 
)
static

◆ pthread_mutex_destroy()

static av_always_inline int pthread_mutex_destroy ( pthread_mutex_t mutex)
static

◆ pthread_mutex_lock()

static av_always_inline int pthread_mutex_lock ( pthread_mutex_t mutex)
static

Definition at line 113 of file os2threads.h.

Referenced by decklink_input_callback::AddRef(), append_buffer(), async_buffer_task(), async_close(), async_lock(), async_read_internal(), async_seek(), async_unlock(), av_log_default_callback(), av_thread_message_flush(), av_thread_message_queue_recv(), av_thread_message_queue_send(), av_thread_message_queue_set_err_recv(), av_thread_message_queue_set_err_send(), avpacket_queue_flush(), avpacket_queue_get(), avpacket_queue_put(), avpacket_queue_size(), avpriv_atomic_lock(), cleanup(), clear_log(), event_handler(), ff_frame_thread_encoder_free(), ff_frame_thread_free(), ff_jni_get_env(), ff_slice_thread_free(), ff_slice_thread_init(), ff_thread_await_progress(), ff_thread_await_progress2(), ff_thread_decode_frame(), ff_thread_finish_setup(), ff_thread_get_format(), ff_thread_release_buffer(), ff_thread_report_progress(), ff_thread_report_progress2(), ff_thread_video_encode_frame(), fifo_consumer_thread(), fifo_write_packet(), frame_worker_thread(), get_buffer(), iec61883_callback(), iec61883_read_packet(), iec61883_receive_task(), lock_frames(), log_callback(), park_frame_worker_threads(), pthread_cond_wait(), decklink_input_callback::Release(), release_delayed_buffers(), set_async_error(), show_log(), slice_thread_uninit(), submit_packet(), thread_execute(), thread_get_buffer_internal(), thread_init_internal(), udp_close(), udp_get_file_handle(), udp_read(), udp_write(), vtenc_q_pop(), vtenc_q_push(), wait_for_state(), and worker().

◆ pthread_mutex_unlock()

static av_always_inline int pthread_mutex_unlock ( pthread_mutex_t mutex)
static

Definition at line 120 of file os2threads.h.

Referenced by decklink_input_callback::AddRef(), append_buffer(), async_buffer_task(), async_close(), async_lock(), async_read_internal(), async_seek(), async_unlock(), av_log_default_callback(), av_thread_message_flush(), av_thread_message_queue_recv(), av_thread_message_queue_send(), av_thread_message_queue_set_err_recv(), av_thread_message_queue_set_err_send(), avpacket_queue_flush(), avpacket_queue_get(), avpacket_queue_put(), avpacket_queue_size(), avpriv_atomic_unlock(), cleanup(), clear_log(), event_handler(), ff_frame_thread_encoder_free(), ff_frame_thread_free(), ff_jni_get_env(), ff_slice_thread_free(), ff_slice_thread_init(), ff_thread_await_progress(), ff_thread_await_progress2(), ff_thread_decode_frame(), ff_thread_finish_setup(), ff_thread_get_format(), ff_thread_release_buffer(), ff_thread_report_progress(), ff_thread_report_progress2(), ff_thread_video_encode_frame(), fifo_consumer_thread(), fifo_write_packet(), frame_worker_thread(), get_buffer(), iec61883_callback(), iec61883_read_packet(), iec61883_receive_task(), log_callback(), park_frame_worker_threads(), pthread_cond_wait(), decklink_input_callback::Release(), release_delayed_buffers(), set_async_error(), show_log(), slice_thread_park_workers(), slice_thread_uninit(), submit_packet(), thread_get_buffer_internal(), thread_init_internal(), thread_park_workers(), udp_close(), udp_get_file_handle(), udp_read(), udp_write(), unlock_frames(), vtenc_q_pop(), vtenc_q_push(), wait_for_state(), and worker().

◆ pthread_cond_init()

static av_always_inline int pthread_cond_init ( pthread_cond_t cond,
const pthread_condattr_t attr 
)
static

◆ pthread_cond_destroy()

static av_always_inline int pthread_cond_destroy ( pthread_cond_t cond)
static

◆ pthread_cond_signal()

static av_always_inline int pthread_cond_signal ( pthread_cond_t cond)
static

◆ pthread_cond_broadcast()

static av_always_inline int pthread_cond_broadcast ( pthread_cond_t cond)
static

◆ pthread_cond_wait()

static av_always_inline int pthread_cond_wait ( pthread_cond_t cond,
pthread_mutex_t mutex 
)
static

◆ pthread_once()

static av_always_inline int pthread_once ( pthread_once_t once_control,
void(*)(void init_routine 
)
static

Definition at line 182 of file os2threads.h.

Referenced by ff_jni_get_env(), and vtenc_init().