Newer
Older
PrismSoftware / ECTrainer2 / TobiiREST.h
#pragma once

#include "REST_Handler.h"
#include "BaseProcess.h"

class ECTrainer;

#define SERVER _T("http://" TOBII_ADDR)

class TobiiREST : public BaseProcess
{
	const DWORD BATTERY_QUERY_INTERVAL = 60000; // ms

	utility::string_t _ProjectID;
	utility::string_t _ParticipantID;
	utility::string_t _CalibrationID;
	int _BatteryLevel;			// 未接続時 999
	DWORD _lastBatteryQuery;		// 前回のバッテリー情報取得時間


	// ECTrainerインスタンス取得
	ECTrainer* Ect() { return (ECTrainer*)_pUserdata; }
	// キャリブレーション開始
	bool StartCalib();
	// キャリブレーション結果を取得
	bool QueryCalibResult();
	// バッテリー残量を取得
	bool QueryBatteryLevel();
	// メッセージ処理
	virtual bool EventProc(MSG& msg);
	// 通常処理
	bool Routine();

	//std::string ClassName() { return "TobiiREST"; }	// FPS表示

public:
	// コンストラクタ
	TobiiREST(ECTrainer* pEct);
	// 初期化
	bool Init();
	// バッテリー残量取得
	int GetBatteryLevel() { return _BatteryLevel; };
};