Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Segments.hpp
00001 /* $Id$ */
00002 
00003 #ifndef _GEOMSLAM_SEGMENTS_HPP
00004 #define _GEOMSLAM_SEGMENTS_HPP
00005 
00006 #include <geom/Segment.hpp>
00007 
00008 namespace jafar {
00009   namespace slam {
00010     class SegmentFeature;
00011   }
00012   namespace geomslam {
00019     class SlamSegmentDriver : public geom::Segment3D::Driver, public geom::Line3D::Driver {
00020       private:
00021         typedef geom::Atom3D::HomogenousVecD HomogenousVecD;
00022         typedef geom::Atom3D::VecD VecD;
00023         typedef geom::Atom3D::HomogenousMatrixD HomogenousMatrixD;
00024         typedef geom::Atom3D::HomogenousSymMatrixD HomogenousSymMatrixD;
00025       public:
00026         SlamSegmentDriver( const slam::SegmentFeature* _segmentFeature);
00027         // Virtual segments driver functions
00028         virtual geom::Line3D support() const;
00029         virtual HomogenousVecD firstPoint() const;
00030         virtual HomogenousSymMatrixD firstPointCov() const;
00031         virtual HomogenousVecD lastPoint() const;
00032         virtual HomogenousSymMatrixD lastPointCov() const;
00033         virtual geom::Segment3D::Driver* cloneSegmentDriver() const;
00034         virtual geom::Line3D::Driver* asLineDriver();
00035         // Virtual lines driver functions
00036         virtual HomogenousVecD pointAt(double t) const;
00037         virtual HomogenousVecD origin() const;
00038         virtual HomogenousSymMatrixD originCov() const;
00039         virtual HomogenousVecD direction() const;
00040         virtual HomogenousSymMatrixD directionCov() const;
00041         virtual geom::Line3D::Driver* cloneLineDriver() const;
00042         // Virtual atom functions
00043         virtual const geom::Repere3D* reference( ) const;
00044         virtual bool hasCov() const;
00045 
00046       private:
00047         const slam::SegmentFeature* m_segmentFeature;
00048     };
00049   }
00050 }
00051 
00052 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:20 for Jafar by doxygen 1.7.6.1
LAAS-CNRS