105 # include "os/Wnt/OsBSemWnt.h" 107 #elif defined(_VXWORKS) 108 # include "os/Vxw/OsBSemVxw.h" 109 typedef class OsBSemVxw OsBSem;
110 #elif defined(__pingtel_on_posix__) 114 # error Unsupported target platform. OsBSemBase()
Default constructor.
Definition: OsBSem.h:81
Base class for the synchronization mechanisms in the OS abstraction layer.
Definition: OsSyncBase.h:46
InitialSemaphoreState
Definition: OsBSem.h:38
virtual OsStatus acquire(const OsTime &rTimeout=OsTime::OS_INFINITY)=0
Block the task until the semaphore is acquired or the timeout expires.
virtual OsStatus tryAcquire(void)=0
Conditionally acquire the semaphore (i.e., don't block)
virtual void OsBSemShow(void)=0
Print semaphore information to the console.
OsStatus
Definition: OsStatus.h:27
virtual ~OsBSemBase()
Destructor.
Definition: OsBSem.h:85
queue blocked tasks on a first-in, first-out basis
Definition: OsBSem.h:46
semaphore is initially unavailable
Definition: OsBSem.h:40
Definition: OsBSemLinux.h:31
Definition: OsBSemWnt.h:35
virtual OsStatus release(void)=0
Release the semaphore.
queue blocked tasks based on their priority
Definition: OsBSem.h:47
int mOptions
options specified at time of binary semaphore creation
Definition: OsBSem.h:75
int mTaskId
if OS_SYNC_DEBUG is enabled, ONLY ON WNT, we use this < variable to store the ID of the task currentl...
Definition: OsBSem.h:77
semaphore is initially available
Definition: OsBSem.h:41
QueueOptions
Definition: OsBSem.h:44
Binary semaphore.
Definition: OsBSem.h:33