AJA NTV2 SDK  17.1.1.1245
NTV2 SDK 17.1.1.1245
AJAThreadImpl Class Reference

#include <threadimpl.h>

Collaboration diagram for AJAThreadImpl:
[legend]

Public Member Functions

 AJAThreadImpl (AJAThread *pThreadContext)
 
virtual ~AJAThreadImpl ()
 
AJAStatus Start ()
 
AJAStatus Stop (uint32_t timeout=0xffffffff)
 
AJAStatus Kill (uint32_t exitCode)
 
bool Active ()
 
bool IsCurrentThread ()
 
AJAStatus SetPriority (AJAThreadPriority threadPriority)
 
AJAStatus GetPriority (AJAThreadPriority *pThreadPriority)
 
AJAStatus SetRealTime (AJAThreadRealTimePolicy policy, int priority)
 
AJAStatus Attach (AJAThreadFunction *pThreadFunction, void *pUserContext)
 
AJAStatus SetThreadName (const char *name)
 
 AJAThreadImpl (AJAThread *pThreadContext)
 
virtual ~AJAThreadImpl ()
 
AJAStatus Start ()
 
AJAStatus Stop (uint32_t timeout=0xffffffff)
 
AJAStatus Kill (uint32_t exitCode)
 
bool Active ()
 
bool IsCurrentThread ()
 
AJAStatus SetPriority (AJAThreadPriority threadPriority)
 
AJAStatus GetPriority (AJAThreadPriority *pThreadPriority)
 
AJAStatus SetRealTime (AJAThreadRealTimePolicy policy, int priority)
 
AJAStatus Attach (AJAThreadFunction *pThreadFunction, void *pUserContext)
 
AJAStatus SetThreadName (const char *name)
 
 AJAThreadImpl (AJAThread *pThreadContext)
 
virtual ~AJAThreadImpl ()
 
AJAStatus Start ()
 
AJAStatus Stop (uint32_t timeout=0xffffffff)
 
AJAStatus Kill (uint32_t exitCode)
 
bool Active ()
 
bool IsCurrentThread ()
 
AJAStatus SetPriority (AJAThreadPriority threadPriority)
 
AJAStatus GetPriority (AJAThreadPriority *pThreadPriority)
 
AJAStatus SetRealTime (AJAThreadRealTimePolicy policy, int priority)
 
AJAStatus Attach (AJAThreadFunction *pThreadFunction, void *pUserContext)
 
AJAStatus SetThreadName (const char *name)
 
 AJAThreadImpl (AJAThread *pThread)
 
virtual ~AJAThreadImpl ()
 
AJAStatus Start ()
 
AJAStatus Stop (uint32_t timeout=0xffffffff)
 
AJAStatus Kill (uint32_t exitCode)
 
bool Active ()
 
bool IsCurrentThread ()
 
AJAStatus SetPriority (AJAThreadPriority threadPriority)
 
AJAStatus GetPriority (AJAThreadPriority *pThreadPriority)
 
AJAStatus SetRealTime (AJAThreadRealTimePolicy policy, int priority)
 
AJAStatus Attach (AJAThreadFunction *pThreadFunction, void *pUserContext)
 
AJAStatus SetThreadName (const char *name)
 

Static Public Member Functions

static uint64_t GetThreadId ()
 
static void * ThreadProcStatic (void *pThreadImplContext)
 
static uint64_t GetThreadId ()
 
static void * ThreadProcStatic (void *pThreadImplContext)
 
static uint64_t GetThreadId ()
 
static void * ThreadProcStatic (void *pThreadImplContext)
 
static uint64_t GetThreadId ()
 
static DWORD WINAPI ThreadProcStatic (void *pThreadImplContext)
 

Public Attributes

AJAThreadmpThreadContext
 
pthread_t mThread
 
pid_t mTid
 
AJAThreadPriority mPriority
 
AJAThreadFunction * mThreadFunc
 
void * mpUserContext
 
AJALock mLock
 
bool mThreadStarted
 
pthread_mutex_t mStartMutex
 
pthread_cond_t mStartCond
 
bool mTerminate
 
bool mExiting
 
pthread_mutex_t mExitMutex
 
pthread_cond_t mExitCond
 
AJAThreadmpThread
 
HANDLE mhThreadHandle
 
DWORD mThreadID
 

Detailed Description

Definition at line 18 of file threadimpl.h.

Constructor & Destructor Documentation

◆ AJAThreadImpl() [1/4]

AJAThreadImpl::AJAThreadImpl ( AJAThread pThreadContext)

Definition at line 45 of file threadimpl.cpp.

◆ ~AJAThreadImpl() [1/4]

AJAThreadImpl::~AJAThreadImpl ( )
virtual

Definition at line 84 of file threadimpl.cpp.

◆ AJAThreadImpl() [2/4]

AJAThreadImpl::AJAThreadImpl ( AJAThread pThreadContext)

◆ ~AJAThreadImpl() [2/4]

virtual AJAThreadImpl::~AJAThreadImpl ( )
virtual

◆ AJAThreadImpl() [3/4]

AJAThreadImpl::AJAThreadImpl ( AJAThread pThreadContext)

◆ ~AJAThreadImpl() [3/4]

virtual AJAThreadImpl::~AJAThreadImpl ( )
virtual

◆ AJAThreadImpl() [4/4]

AJAThreadImpl::AJAThreadImpl ( AJAThread pThread)

◆ ~AJAThreadImpl() [4/4]

virtual AJAThreadImpl::~AJAThreadImpl ( )
virtual

Member Function Documentation

◆ Active() [1/4]

bool AJAThreadImpl::Active ( )

◆ Active() [2/4]

bool AJAThreadImpl::Active ( )

◆ Active() [3/4]

bool AJAThreadImpl::Active ( )

◆ Active() [4/4]

bool AJAThreadImpl::Active ( )

Definition at line 386 of file threadimpl.cpp.

◆ Attach() [1/4]

AJAStatus AJAThreadImpl::Attach ( AJAThreadFunction *  pThreadFunction,
void *  pUserContext 
)

◆ Attach() [2/4]

AJAStatus AJAThreadImpl::Attach ( AJAThreadFunction *  pThreadFunction,
void *  pUserContext 
)

◆ Attach() [3/4]

AJAStatus AJAThreadImpl::Attach ( AJAThreadFunction *  pThreadFunction,
void *  pUserContext 
)

Definition at line 566 of file threadimpl.cpp.

◆ Attach() [4/4]

AJAStatus AJAThreadImpl::Attach ( AJAThreadFunction *  pThreadFunction,
void *  pUserContext 
)

◆ GetPriority() [1/4]

AJAStatus AJAThreadImpl::GetPriority ( AJAThreadPriority pThreadPriority)

◆ GetPriority() [2/4]

AJAStatus AJAThreadImpl::GetPriority ( AJAThreadPriority pThreadPriority)

◆ GetPriority() [3/4]

AJAStatus AJAThreadImpl::GetPriority ( AJAThreadPriority pThreadPriority)

◆ GetPriority() [4/4]

AJAStatus AJAThreadImpl::GetPriority ( AJAThreadPriority pThreadPriority)

Definition at line 504 of file threadimpl.cpp.

◆ GetThreadId() [1/4]

static uint64_t AJAThreadImpl::GetThreadId ( )
static

◆ GetThreadId() [2/4]

static uint64_t AJAThreadImpl::GetThreadId ( )
static

◆ GetThreadId() [3/4]

uint64_t AJAThreadImpl::GetThreadId ( )
static

Definition at line 685 of file threadimpl.cpp.

◆ GetThreadId() [4/4]

static uint64_t AJAThreadImpl::GetThreadId ( )
static

◆ IsCurrentThread() [1/4]

bool AJAThreadImpl::IsCurrentThread ( )

◆ IsCurrentThread() [2/4]

bool AJAThreadImpl::IsCurrentThread ( )

◆ IsCurrentThread() [3/4]

bool AJAThreadImpl::IsCurrentThread ( )

Definition at line 406 of file threadimpl.cpp.

◆ IsCurrentThread() [4/4]

bool AJAThreadImpl::IsCurrentThread ( )

◆ Kill() [1/4]

AJAStatus AJAThreadImpl::Kill ( uint32_t  exitCode)

◆ Kill() [2/4]

AJAStatus AJAThreadImpl::Kill ( uint32_t  exitCode)

◆ Kill() [3/4]

AJAStatus AJAThreadImpl::Kill ( uint32_t  exitCode)

Definition at line 332 of file threadimpl.cpp.

◆ Kill() [4/4]

AJAStatus AJAThreadImpl::Kill ( uint32_t  exitCode)

◆ SetPriority() [1/4]

AJAStatus AJAThreadImpl::SetPriority ( AJAThreadPriority  threadPriority)

◆ SetPriority() [2/4]

AJAStatus AJAThreadImpl::SetPriority ( AJAThreadPriority  threadPriority)

◆ SetPriority() [3/4]

AJAStatus AJAThreadImpl::SetPriority ( AJAThreadPriority  threadPriority)

Definition at line 425 of file threadimpl.cpp.

◆ SetPriority() [4/4]

AJAStatus AJAThreadImpl::SetPriority ( AJAThreadPriority  threadPriority)

◆ SetRealTime() [1/4]

AJAStatus AJAThreadImpl::SetRealTime ( AJAThreadRealTimePolicy  policy,
int  priority 
)

◆ SetRealTime() [2/4]

AJAStatus AJAThreadImpl::SetRealTime ( AJAThreadRealTimePolicy  policy,
int  priority 
)

◆ SetRealTime() [3/4]

AJAStatus AJAThreadImpl::SetRealTime ( AJAThreadRealTimePolicy  policy,
int  priority 
)

Definition at line 522 of file threadimpl.cpp.

◆ SetRealTime() [4/4]

AJAStatus AJAThreadImpl::SetRealTime ( AJAThreadRealTimePolicy  policy,
int  priority 
)

◆ SetThreadName() [1/4]

AJAStatus AJAThreadImpl::SetThreadName ( const char *  name)

◆ SetThreadName() [2/4]

AJAStatus AJAThreadImpl::SetThreadName ( const char *  name)

◆ SetThreadName() [3/4]

AJAStatus AJAThreadImpl::SetThreadName ( const char *  name)

Definition at line 672 of file threadimpl.cpp.

◆ SetThreadName() [4/4]

AJAStatus AJAThreadImpl::SetThreadName ( const char *  name)

◆ Start() [1/4]

AJAStatus AJAThreadImpl::Start ( )

◆ Start() [2/4]

AJAStatus AJAThreadImpl::Start ( )

◆ Start() [3/4]

AJAStatus AJAThreadImpl::Start ( )

◆ Start() [4/4]

AJAStatus AJAThreadImpl::Start ( )

Definition at line 116 of file threadimpl.cpp.

◆ Stop() [1/4]

AJAStatus AJAThreadImpl::Stop ( uint32_t  timeout = 0xffffffff)

◆ Stop() [2/4]

AJAStatus AJAThreadImpl::Stop ( uint32_t  timeout = 0xffffffff)

◆ Stop() [3/4]

AJAStatus AJAThreadImpl::Stop ( uint32_t  timeout = 0xffffffff)

◆ Stop() [4/4]

AJAStatus AJAThreadImpl::Stop ( uint32_t  timeout = 0xffffffff)

Definition at line 208 of file threadimpl.cpp.

◆ ThreadProcStatic() [1/4]

static DWORD WINAPI AJAThreadImpl::ThreadProcStatic ( void *  pThreadImplContext)
static

◆ ThreadProcStatic() [2/4]

static void* AJAThreadImpl::ThreadProcStatic ( void *  pThreadImplContext)
static

◆ ThreadProcStatic() [3/4]

static void* AJAThreadImpl::ThreadProcStatic ( void *  pThreadImplContext)
static

◆ ThreadProcStatic() [4/4]

DWORD WINAPI AJAThreadImpl::ThreadProcStatic ( void *  pThreadImplContext)
static

Definition at line 581 of file threadimpl.cpp.

Member Data Documentation

◆ mExitCond

pthread_cond_t AJAThreadImpl::mExitCond

Definition at line 61 of file threadimpl.h.

◆ mExiting

bool AJAThreadImpl::mExiting

Definition at line 59 of file threadimpl.h.

◆ mExitMutex

pthread_mutex_t AJAThreadImpl::mExitMutex

Definition at line 60 of file threadimpl.h.

◆ mhThreadHandle

HANDLE AJAThreadImpl::mhThreadHandle

Definition at line 43 of file threadimpl.h.

◆ mLock

AJALock AJAThreadImpl::mLock

Definition at line 52 of file threadimpl.h.

◆ mPriority

AJAThreadPriority AJAThreadImpl::mPriority

Definition at line 49 of file threadimpl.h.

◆ mpThread

AJAThread* AJAThreadImpl::mpThread

Definition at line 42 of file threadimpl.h.

◆ mpThreadContext

AJAThread * AJAThreadImpl::mpThreadContext

Definition at line 46 of file threadimpl.h.

◆ mpUserContext

void * AJAThreadImpl::mpUserContext

Definition at line 51 of file threadimpl.h.

◆ mStartCond

pthread_cond_t AJAThreadImpl::mStartCond

Definition at line 56 of file threadimpl.h.

◆ mStartMutex

pthread_mutex_t AJAThreadImpl::mStartMutex

Definition at line 55 of file threadimpl.h.

◆ mTerminate

bool AJAThreadImpl::mTerminate

Definition at line 58 of file threadimpl.h.

◆ mThread

pthread_t AJAThreadImpl::mThread

Definition at line 47 of file threadimpl.h.

◆ mThreadFunc

AJAThreadFunction * AJAThreadImpl::mThreadFunc

Definition at line 50 of file threadimpl.h.

◆ mThreadID

DWORD AJAThreadImpl::mThreadID

Definition at line 44 of file threadimpl.h.

◆ mThreadStarted

bool AJAThreadImpl::mThreadStarted

Definition at line 54 of file threadimpl.h.

◆ mTid

pid_t AJAThreadImpl::mTid

Definition at line 48 of file threadimpl.h.


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