| 12345678910111213141516171819202122232425262728293031323334353637 | 
							- #include "WrappedSemaphore.h"
 
- /**
 
-  * Platform semaphopre implementation for the esp-idf.
 
-  */
 
- using namespace bell;
 
- WrappedSemaphore::WrappedSemaphore(int count) {
 
-   semaphoreHandle = xSemaphoreCreateCounting(count, 0);
 
- }
 
- WrappedSemaphore::~WrappedSemaphore() {
 
-   vSemaphoreDelete(semaphoreHandle);
 
- }
 
- int WrappedSemaphore::wait() {
 
-   if (xSemaphoreTake(semaphoreHandle, portMAX_DELAY) == pdTRUE) {
 
-     return 0;
 
-   }
 
-   return 1;
 
- }
 
- int WrappedSemaphore::twait(long milliseconds) {
 
-   if (xSemaphoreTake(semaphoreHandle, milliseconds / portTICK_PERIOD_MS) ==
 
-       pdTRUE) {
 
-     return 0;
 
-   }
 
-   return 1;
 
- }
 
- void WrappedSemaphore::give() {
 
-   xSemaphoreGive(semaphoreHandle);
 
- }
 
 
  |