Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Queue mbed-rtos FXOS8700Q
Fork of Pacemaker by
dataStruct.cpp@19:d58e1e1a9a24, 2016-11-24 (annotated)
- Committer:
- trane3
- Date:
- Thu Nov 24 01:10:08 2016 +0000
- Revision:
- 19:d58e1e1a9a24
- Parent:
- 16:08d5e5a3ee74
- Child:
- 28:4f36e100ccbe
- Child:
- 30:cc7586a259fd
added motion class, and accelerometer capabilites for rate modulation (eric); modified user interface by seperating each 'page' into seperate modules (eric)
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| noahzwiep | 16:08d5e5a3ee74 | 1 | #pragma once | 
| noahzwiep | 16:08d5e5a3ee74 | 2 | #include "dataStruct.h" | 
| noahzwiep | 16:08d5e5a3ee74 | 3 | #include "rtos.h" | 
| noahzwiep | 16:08d5e5a3ee74 | 4 | |
| trane3 | 19:d58e1e1a9a24 | 5 | dataStruct::dataStruct(hardware* hWare): myQueue(1,N),thread(&dataStruct::threadStarter){ | 
| noahzwiep | 16:08d5e5a3ee74 | 6 | myHardware = hWare; | 
| noahzwiep | 16:08d5e5a3ee74 | 7 | thread.signal_set(START_THREAD); | 
| noahzwiep | 16:08d5e5a3ee74 | 8 | } | 
| noahzwiep | 16:08d5e5a3ee74 | 9 | |
| noahzwiep | 16:08d5e5a3ee74 | 10 | dataStruct::~dataStruct(){ | 
| noahzwiep | 16:08d5e5a3ee74 | 11 | } | 
| noahzwiep | 16:08d5e5a3ee74 | 12 | |
| noahzwiep | 16:08d5e5a3ee74 | 13 | void dataStruct::threadStarter(void const *p){ | 
| noahzwiep | 16:08d5e5a3ee74 | 14 | dataStruct *instance = (dataStruct*)p; | 
| noahzwiep | 16:08d5e5a3ee74 | 15 | instance->storeData(); | 
| noahzwiep | 16:08d5e5a3ee74 | 16 | } | 
| noahzwiep | 16:08d5e5a3ee74 | 17 | |
| noahzwiep | 16:08d5e5a3ee74 | 18 | void dataStruct::storeData(){ | 
| noahzwiep | 16:08d5e5a3ee74 | 19 | thread.signal_wait(START_THREAD); | 
| noahzwiep | 16:08d5e5a3ee74 | 20 | while(true){ | 
| noahzwiep | 16:08d5e5a3ee74 | 21 | streamValue = myHardware->getSense(); | 
| noahzwiep | 16:08d5e5a3ee74 | 22 | if(myQueue.GetNumberOfItems() <= N){ | 
| noahzwiep | 16:08d5e5a3ee74 | 23 | myQueue.Put(&streamValue); | 
| noahzwiep | 16:08d5e5a3ee74 | 24 | } | 
| noahzwiep | 16:08d5e5a3ee74 | 25 | Thread::wait(4); | 
| noahzwiep | 16:08d5e5a3ee74 | 26 | } | 
| noahzwiep | 16:08d5e5a3ee74 | 27 | } | 
| noahzwiep | 16:08d5e5a3ee74 | 28 | |
| noahzwiep | 16:08d5e5a3ee74 | 29 | queue dataStruct::getData(){ | 
| noahzwiep | 16:08d5e5a3ee74 | 30 | queue temp = myQueue; | 
| noahzwiep | 16:08d5e5a3ee74 | 31 | myQueue.Flush(); | 
| noahzwiep | 16:08d5e5a3ee74 | 32 | return temp; | 
| noahzwiep | 16:08d5e5a3ee74 | 33 | } | 
