refactoring
This commit is contained in:
parent
b53505f660
commit
0534c70719
@ -50,6 +50,7 @@ private:
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <windows.h>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
@ -64,13 +65,14 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
sync::Track &track = syncDevice->getTrack("test");
|
sync::Track &track = syncDevice->getTrack("test");
|
||||||
|
|
||||||
// timer.play();
|
timer.play();
|
||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
float row = timer.getRow();
|
float row = timer.getRow();
|
||||||
if (!syncDevice->update(row)) break;
|
if (!syncDevice->update(row)) break;
|
||||||
|
|
||||||
printf("%2.2f: %2.2f \r", row, track.getValue(row));
|
printf("%2.2f: %2.2f \n", row, track.getValue(row));
|
||||||
|
Sleep(1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@ -7,17 +7,24 @@ using namespace sync;
|
|||||||
class ClientDevice : public Device
|
class ClientDevice : public Device
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ClientDevice(SOCKET serverSocket, Timer &timer) : serverSocket(serverSocket), timer(timer) {}
|
ClientDevice(const std::string &baseName, SOCKET serverSocket, Timer &timer) :
|
||||||
|
baseName(baseName),
|
||||||
|
timer(timer),
|
||||||
|
serverSocket(serverSocket)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
~ClientDevice();
|
~ClientDevice();
|
||||||
|
|
||||||
Track &getTrack(const std::string &trackName);
|
Track &getTrack(const std::string &trackName);
|
||||||
bool update(float row);
|
bool update(float row);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
const std::string &baseName;
|
||||||
SyncData syncData;
|
SyncData syncData;
|
||||||
SOCKET serverSocket;
|
|
||||||
|
|
||||||
Timer &timer;
|
Timer &timer;
|
||||||
|
|
||||||
|
SOCKET serverSocket;
|
||||||
};
|
};
|
||||||
|
|
||||||
ClientDevice::~ClientDevice()
|
ClientDevice::~ClientDevice()
|
||||||
@ -45,7 +52,6 @@ Track &ClientDevice::getTrack(const std::string &trackName)
|
|||||||
send(serverSocket, name_str, name_len, 0);
|
send(serverSocket, name_str, name_len, 0);
|
||||||
|
|
||||||
sync::Track *track = new sync::Track();
|
sync::Track *track = new sync::Track();
|
||||||
/* todo: fill in based on the response */
|
|
||||||
|
|
||||||
syncData.actualTracks.push_back(track);
|
syncData.actualTracks.push_back(track);
|
||||||
syncData.tracks[trackName] = clientIndex;
|
syncData.tracks[trackName] = clientIndex;
|
||||||
|
|||||||
55
sync/device_player.cpp
Normal file
55
sync/device_player.cpp
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
#include "device.h"
|
||||||
|
#include "../network.h"
|
||||||
|
#include "../syncdata.h"
|
||||||
|
|
||||||
|
using namespace sync;
|
||||||
|
|
||||||
|
class PlayerDevice : public Device
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
PlayerDevice(const std::string &baseName, Timer &timer) :
|
||||||
|
baseName(baseName),
|
||||||
|
timer(timer)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
~PlayerDevice();
|
||||||
|
|
||||||
|
Track &getTrack(const std::string &trackName);
|
||||||
|
bool update(float row);
|
||||||
|
|
||||||
|
private:
|
||||||
|
const std::string &baseName;
|
||||||
|
SyncData syncData;
|
||||||
|
Timer &timer;
|
||||||
|
};
|
||||||
|
|
||||||
|
PlayerDevice::~PlayerDevice() { }
|
||||||
|
|
||||||
|
Track &PlayerDevice::getTrack(const std::string &trackName)
|
||||||
|
{
|
||||||
|
SyncData::TrackContainer::iterator iter = syncData.tracks.find(trackName);
|
||||||
|
if (iter != syncData.tracks.end()) return *syncData.actualTracks[iter->second];
|
||||||
|
|
||||||
|
sync::Track *track = new sync::Track();
|
||||||
|
|
||||||
|
// TODO: load data from file
|
||||||
|
track->setKeyFrame(0, 10.0f);
|
||||||
|
track->setKeyFrame(10, 0.0f);
|
||||||
|
|
||||||
|
size_t index = syncData.actualTracks.size();
|
||||||
|
syncData.actualTracks.push_back(track);
|
||||||
|
syncData.tracks[trackName] = index;
|
||||||
|
return *track;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool PlayerDevice::update(float row)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
Device *sync::createDevice(const std::string &baseName, Timer &timer)
|
||||||
|
{
|
||||||
|
Device *device = new PlayerDevice(baseName, timer);
|
||||||
|
return device;
|
||||||
|
}
|
||||||
@ -23,7 +23,6 @@ namespace sync
|
|||||||
|
|
||||||
void deleteKeyFrame(size_t row);
|
void deleteKeyFrame(size_t row);
|
||||||
void setKeyFrame(size_t row, const KeyFrame &keyFrame);
|
void setKeyFrame(size_t row, const KeyFrame &keyFrame);
|
||||||
void setKeyFrame(size_t row, const float value);
|
|
||||||
|
|
||||||
// private:
|
// private:
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user