34#include "../objects/PCustomObject.h"
35#include "../base/PComplexData.h"
36#include "../base/Variant.h"
37#include "../libs/PEBLEnvironment.h"
42PEyeTracker::PEyeTracker()
46 if( !m_api.connect(
false ) )
55PEyeTracker::~PEyeTracker()
61gtl::GazeData * PEyeTracker::GetGazeFrame()
64 gtl::GazeData *gd =
new gtl::GazeData;
84 Variant ConvertGazeData(
const gtl::GazeData& gd)
103 po->
SetProperty(
"LEFTEYECENTERX",gd.lefteye.pcenter.x);
104 po->
SetProperty(
"LEFTEYECENTERY",gd.lefteye.pcenter.y);
110 po->
SetProperty(
"RIGHTEYEPSIZE", gd.righteye.psize);
111 po->
SetProperty(
"RIGHTEYECENTERX",gd.righteye.pcenter.x);
112 po->
SetProperty(
"RIGHTEYECENTERY",gd.righteye.pcenter.y);
126bool PEyeTracker::SetProperty(std::string name,
Variant v)
136Variant PEyeTracker::GetProperty(std::string name)
const
144 return ValidateProperty(name);
149 cout <<
"Validating eyetracking property\n";
163PEBLGaze::PEBLGaze(std::string functionname)
165 mFunctionName = functionname;
167 if( m_api.connect(
true ) )
170 m_api.add_listener( *
this );
176 m_api.remove_listener( *
this );
180void PEBLGaze::on_gaze_data( gtl::GazeData
const & gaze_data )
182 if( gaze_data.state & gtl::GazeData::GD_STATE_TRACKING_GAZE )
189 std::cout <<
"automatic:" << gaze_data.time << std::endl;
192 Variant gd = ConvertGazeData(gaze_data);
@ OVE_INVALID_PROPERTY_NAME
This class simply represent an abstract text-based object.
virtual bool SetProperty(std::string, Variant v)
virtual ObjectValidationError ValidateProperty(std::string, Variant v) const
Variant GetProperty(std::string) const
void PushBack(const Variant &v)
Variant CallFunction(Variant v)