james kain / Mbed 2 deprecated GPS_Incremental

Dependencies:   mbed

Fork of GPS_Incremental by Dan Matthews

Committer:
dannyman939
Date:
Tue Mar 19 02:17:40 2013 +0000
Revision:
0:c746ee34feae
Basic functionality, Chris Version 0.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dannyman939 0:c746ee34feae 1 #include "Semaphore.h"
dannyman939 0:c746ee34feae 2
dannyman939 0:c746ee34feae 3 #include <string.h>
dannyman939 0:c746ee34feae 4 #include "error.h"
dannyman939 0:c746ee34feae 5
dannyman939 0:c746ee34feae 6 namespace rtos {
dannyman939 0:c746ee34feae 7
dannyman939 0:c746ee34feae 8 Semaphore::Semaphore(int32_t count) {
dannyman939 0:c746ee34feae 9 #ifdef CMSIS_OS_RTX
dannyman939 0:c746ee34feae 10 memset(_semaphore_data, 0, sizeof(_semaphore_data));
dannyman939 0:c746ee34feae 11 _osSemaphoreDef.semaphore = _semaphore_data;
dannyman939 0:c746ee34feae 12 #endif
dannyman939 0:c746ee34feae 13 _osSemaphoreId = osSemaphoreCreate(&_osSemaphoreDef, count);
dannyman939 0:c746ee34feae 14 }
dannyman939 0:c746ee34feae 15
dannyman939 0:c746ee34feae 16 int32_t Semaphore::wait(uint32_t millisec) {
dannyman939 0:c746ee34feae 17 return osSemaphoreWait(_osSemaphoreId, millisec);
dannyman939 0:c746ee34feae 18 }
dannyman939 0:c746ee34feae 19
dannyman939 0:c746ee34feae 20 osStatus Semaphore::release(void) {
dannyman939 0:c746ee34feae 21 return osSemaphoreRelease(_osSemaphoreId);
dannyman939 0:c746ee34feae 22 }
dannyman939 0:c746ee34feae 23
dannyman939 0:c746ee34feae 24 Semaphore::~Semaphore() {
dannyman939 0:c746ee34feae 25 osSemaphoreDelete(_osSemaphoreId);
dannyman939 0:c746ee34feae 26 }
dannyman939 0:c746ee34feae 27
dannyman939 0:c746ee34feae 28 }