Libary for control.

Dependencies:   FastPWM

Dependents:   RT2_Cuboid

Committer:
pmic
Date:
Thu May 05 09:18:40 2022 +0000
Revision:
10:eb29810d831b
Parent:
0:7d31b290d65e
Adjusted AvgFilter (damn...)

Who changed what in which revision?

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