This is Unofficial EPICS BASE Doxygen Site
osdMutex.c File Reference
#include <vxWorks.h>
#include <semLib.h>
#include <time.h>
#include <objLib.h>
#include <sysLib.h>
#include "epicsMutex.h"
+ Include dependency graph for osdMutex.c:

Go to the source code of this file.

Functions

int sysClkRateGet (void)
 
struct epicsMutexOSDepicsMutexOsdCreate (void)
 
void epicsMutexOsdDestroy (struct epicsMutexOSD *id)
 
epicsMutexLockStatus epicsMutexOsdTryLock (struct epicsMutexOSD *id)
 
void epicsMutexOsdShow (struct epicsMutexOSD *id, unsigned int level)
 

Function Documentation

struct epicsMutexOSD* epicsMutexOsdCreate ( void  )

The following are interfaces to the OS dependent implementation and should NOT be called directly by user code.

Definition at line 26 of file osdMutex.c.

27 {
28  return((struct epicsMutexOSD *)
29  semMCreate(SEM_DELETE_SAFE|SEM_INVERSION_SAFE|SEM_Q_PRIORITY));
30 }
void epicsMutexOsdDestroy ( struct epicsMutexOSD id)

Definition at line 32 of file osdMutex.c.

33 {
34  semDelete((SEM_ID)id);
35 }
void epicsMutexOsdShow ( struct epicsMutexOSD id,
unsigned int  level 
)

Definition at line 46 of file osdMutex.c.

47 {
48  semShow((SEM_ID)id,level);
49 }
epicsMutexLockStatus epicsMutexOsdTryLock ( struct epicsMutexOSD id)

Definition at line 37 of file osdMutex.c.

38 {
39  int status;
40  status = semTake((SEM_ID)id,NO_WAIT);
41  if(status==OK) return(epicsMutexLockOK);
42  if(errno==S_objLib_OBJ_UNAVAILABLE) return(epicsMutexLockTimeout);
43  return(epicsMutexLockError);
44 }
pvd::Status status
int sysClkRateGet ( void  )