24 enum class update_result { ACQUISITION_FAILED, KINFU_FAILED, SUCCESS };
29 virtual std::string getPortName()
const = 0;
30 virtual bool openPort(
const std::string & name) = 0;
31 virtual void interruptPort() = 0;
32 virtual void closePort() = 0;
33 virtual update_result update() = 0;
37 yarp::dev::IRGBDSensor * sensor;
46 public SceneReconstructionIDL
52 bool configure(yarp::os::ResourceFinder & rf)
override;
54 double getPeriod()
override
57 bool updateModule()
override;
59 bool interruptModule()
override;
61 bool close()
override;
63 bool pause()
override;
65 bool resume()
override;
67 bool reset()
override;
69 return_pose getPose()
override;
71 return_points getPoints()
override;
73 return_points_with_normals getPointsWithNormals()
override;
77 std::atomic_bool isRunning {
false};
78 std::unique_ptr<KinectFusion> kinfu {
nullptr};
80 yarp::dev::PolyDriver cameraDriver;
81 yarp::dev::IRGBDSensor * iRGBDSensor {
nullptr};
83 std::unique_ptr<RenderUpdater> renderUpdater {
nullptr};
84 yarp::os::RpcServer rpcServer;