comparison include/ClockSynchronizer.h @ 132:e24c531220ee scope-refactoring

Added some sort of synchronization, not working great though
author Giulio Moro <giuliomoro@yahoo.it>
date Thu, 27 Aug 2015 01:42:04 +0100
parents
children
comparison
equal deleted inserted replaced
131:ff28e56e5b7e 132:e24c531220ee
1 /*
2 * ClockSynchronizer.h
3 *
4 * Created on: 26 Aug 2015
5 * Author: giulio
6 */
7
8 #ifndef CLOCKSYNCHRONIZER_H_
9 #define CLOCKSYNCHRONIZER_H_
10
11 #include <BeagleRT.h>
12 #include <I2c_Codec.h>
13 #include <NetworkSend.h>
14 #include <native/timer.h>
15 extern I2c_Codec *gAudioCodec;
16
17 class ClockSynchronizer {
18 private:
19 int localOffset;
20 int remoteOffset;
21 RTIME timeOffset;
22 int localCounter;
23 int remoteCounter;
24 RTIME lastTime;
25 void reset();
26 static bool staticConstructed;
27 static void staticConstructor();
28 static float currentSamplingRate;
29 static float targetSamplingRate;
30 static bool threadRunning;
31 static int threadWasRunning;
32 static AuxiliaryTask setClockTask;
33 public:
34 ClockSynchronizer();
35 ~ClockSynchronizer();
36 void setup();
37 void update(int aLocalCounter, int aRemoteCounter, RTIME aLastTime);
38 void adjustClock();
39 static void setClock();
40 };
41
42 #endif /* CLOCKSYNCHRONIZER_H_ */