GCOP  1.0
map.h
Go to the documentation of this file.
00001 #ifndef GCOP_MAP_H
00002 #define GCOP_MAP_H
00003 #include <Eigen/Dense>
00004 #include <assert.h>
00005 #include <iostream>
00006 #include "manifold.h"
00007 
00008 namespace gcop {
00009   using namespace Eigen;
00016    template <typename T1, typename T2, int _n1 = Dynamic, int _n2 = Dynamic> class Manifoldmap {
00017      public: 
00018        typedef Matrix<double, _n1, 1> Vectorn1d;
00019        typedef Matrix<double, _n1, _n> Matrixn1d;
00020 
00021        typedef Matrix<double, _n2, 1> Vectorn2d;
00022        typedef Matrix<double, _n2, _n> Matrixn2d;
00023 
00024        typedef Matrix<double, _n1, _n2> Matrixn1n2d;
00025 
00026        int n1;//Input dimension
00027        int n2;//Output dimension
00028 
00032         Manifoldmap(int n1, int n2): n1(_n1 != Dynamic ? _n1 : n1), n2(_n2 != Dynamic ? _n2 : n2)
00033         {
00034         };
00035 
00042         virtual void map(const T1 &m1, T2 &m2, Matrixn1n2d *J = 0) = 0;
00043    }
00044 }
00045 #endif