Library that uses mbed-os

Dependents:   My_Libraries

Committer:
altb
Date:
Wed Mar 06 14:19:23 2019 +0000
Revision:
0:ff3de4aaacf8
New RTOS part

Who changed what in which revision?

UserRevisionLine numberNew contents of line
altb 0:ff3de4aaacf8 1 /*
altb 0:ff3de4aaacf8 2 * Signal.h
altb 0:ff3de4aaacf8 3 * Copyright (c) 2017, ZHAW
altb 0:ff3de4aaacf8 4 * All rights reserved.
altb 0:ff3de4aaacf8 5 */
altb 0:ff3de4aaacf8 6
altb 0:ff3de4aaacf8 7 #ifndef SIGNAL_H_
altb 0:ff3de4aaacf8 8 #define SIGNAL_H_
altb 0:ff3de4aaacf8 9
altb 0:ff3de4aaacf8 10 #include <cstdlib>
altb 0:ff3de4aaacf8 11 #include <stdint.h>
altb 0:ff3de4aaacf8 12 #include <mbed.h>
altb 0:ff3de4aaacf8 13
altb 0:ff3de4aaacf8 14 /**
altb 0:ff3de4aaacf8 15 * This class manages the handling of unique signal flags to trigger rtos threads.
altb 0:ff3de4aaacf8 16 */
altb 0:ff3de4aaacf8 17 class Signal {
altb 0:ff3de4aaacf8 18
altb 0:ff3de4aaacf8 19 public:
altb 0:ff3de4aaacf8 20
altb 0:ff3de4aaacf8 21 Signal();
altb 0:ff3de4aaacf8 22 virtual ~Signal();
altb 0:ff3de4aaacf8 23 virtual int32_t read();
altb 0:ff3de4aaacf8 24 operator int32_t();
altb 0:ff3de4aaacf8 25
altb 0:ff3de4aaacf8 26 private:
altb 0:ff3de4aaacf8 27
altb 0:ff3de4aaacf8 28 static int32_t signals; // variable that holds all assigned signal flags
altb 0:ff3de4aaacf8 29 int32_t signal; // signal flag of this object
altb 0:ff3de4aaacf8 30 Mutex mutex; // mutex to lock critical sections
altb 0:ff3de4aaacf8 31 };
altb 0:ff3de4aaacf8 32
altb 0:ff3de4aaacf8 33 #endif /* SIGNAL_H_ */
altb 0:ff3de4aaacf8 34