PM2_Lib
Dependencies: LSM9DS1 RangeFinder FastPWM
ThreadFlag.h@23:1926540ebbec, 2022-03-23 (annotated)
- Committer:
- pmic
- Date:
- Wed Mar 23 09:46:07 2022 +0000
- Revision:
- 23:1926540ebbec
- Parent:
- 4:9c003c402033
Renamed ReEnalbe function to Enable in Servo class
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pmic | 0:86129f1b4a93 | 1 | /* |
pmic | 0:86129f1b4a93 | 2 | * ThreadFlag.h |
pmic | 0:86129f1b4a93 | 3 | * Copyright (c) 2020, ZHAW |
pmic | 0:86129f1b4a93 | 4 | * All rights reserved. |
pmic | 0:86129f1b4a93 | 5 | */ |
pmic | 0:86129f1b4a93 | 6 | |
pmic | 0:86129f1b4a93 | 7 | #ifndef THREAD_FLAG_H_ |
pmic | 0:86129f1b4a93 | 8 | #define THREAD_FLAG_H_ |
pmic | 0:86129f1b4a93 | 9 | |
pmic | 0:86129f1b4a93 | 10 | #include <cstdlib> |
pmic | 0:86129f1b4a93 | 11 | #include <mbed.h> |
pmic | 0:86129f1b4a93 | 12 | |
pmic | 0:86129f1b4a93 | 13 | /** |
pmic | 0:86129f1b4a93 | 14 | * This class manages the handling of unique thread flags to trigger rtos threads. |
pmic | 0:86129f1b4a93 | 15 | */ |
pmic | 4:9c003c402033 | 16 | class ThreadFlag |
pmic | 4:9c003c402033 | 17 | { |
pmic | 4:9c003c402033 | 18 | |
pmic | 4:9c003c402033 | 19 | public: |
pmic | 4:9c003c402033 | 20 | |
pmic | 4:9c003c402033 | 21 | ThreadFlag(); |
pmic | 4:9c003c402033 | 22 | virtual ~ThreadFlag(); |
pmic | 4:9c003c402033 | 23 | virtual unsigned int read(); |
pmic | 4:9c003c402033 | 24 | operator unsigned int(); |
pmic | 4:9c003c402033 | 25 | |
pmic | 4:9c003c402033 | 26 | private: |
pmic | 4:9c003c402033 | 27 | |
pmic | 4:9c003c402033 | 28 | static unsigned int threadFlags; // variable that holds all assigned thread flags |
pmic | 4:9c003c402033 | 29 | unsigned int threadFlag; // thread flag of this object |
pmic | 4:9c003c402033 | 30 | Mutex mutex; // mutex to lock critical sections |
pmic | 0:86129f1b4a93 | 31 | }; |
pmic | 0:86129f1b4a93 | 32 | |
pmic | 0:86129f1b4a93 | 33 | #endif /* THREAD_FLAG_H_ */ |
pmic | 0:86129f1b4a93 | 34 |