[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Toon-members] TooN internal/reference.hh test/test_foreign.cc
From: |
Edward Rosten |
Subject: |
[Toon-members] TooN internal/reference.hh test/test_foreign.cc |
Date: |
Wed, 15 Apr 2009 16:24:20 +0000 |
CVSROOT: /cvsroot/toon
Module name: TooN
Changes by: Edward Rosten <edrosten> 09/04/15 16:24:20
Modified files:
internal : reference.hh
test : test_foreign.cc
Log message:
Removed old wrapping interface. Added new convenience function
wrapVector
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/TooN/internal/reference.hh?cvsroot=toon&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/TooN/test/test_foreign.cc?cvsroot=toon&r1=1.5&r2=1.6
Patches:
Index: internal/reference.hh
===================================================================
RCS file: /cvsroot/toon/TooN/internal/reference.hh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- internal/reference.hh 12 Apr 2009 09:48:56 -0000 1.2
+++ internal/reference.hh 15 Apr 2009 16:24:19 -0000 1.3
@@ -77,38 +77,12 @@
};
};
-template<int R, int C, typename Precision=double, class
Type=Reference::RowMajor> struct Wrap
-{
- static Matrix<R, C, Precision, Type> wrap(Precision* p)
- {
- return Matrix<R, C, Precision, Type>(p);
- }
-};
-
-
-template<int R, typename Precision, class Type> struct Wrap<R, Dynamic,
Precision, Type>
-{
- static Matrix<R, Dynamic, Precision, Type> wrap(Precision* p, int cols)
- {
- return Matrix<R, Dynamic, Precision, Type>(p, 0, cols);
- }
-};
-
-
-template<int C, typename Precision, class Type> struct Wrap<Dynamic, C,
Precision, Type>
-{
- static Matrix<Dynamic, C, Precision, Type> wrap(Precision* p, int rows)
- {
- return Matrix<Dynamic, C, Precision, Type>(p, rows, 0);
- }
-};
-
-
-template<typename Precision, class Type> struct Wrap<Dynamic, Dynamic,
Precision, Type>
-{
- static Matrix<Dynamic, Dynamic, Precision, Type> wrap(Precision* p, int
rows, int cols)
- {
- return Matrix<Dynamic, Dynamic, Precision, Type>(p, rows, cols);
- }
-};
+ Vector<Dynamic, double,
Reference> wrapVector(double* data, int size) { return Vector<Dynamic,
double, Reference>(data, size); }
+ const Vector<Dynamic, double,
Reference> wrapVector(const double* data, int size) { return Vector<Dynamic,
double, Reference>(const_cast<double*>(data), size); }
+template<int Size> Vector<Size, double,
Reference> wrapVector(double* data) { return Vector<Size,
double, Reference>(data); }
+template<int Size> const Vector<Size, double,
Reference> wrapVector(const double* data) { return Vector<Size,
double, Reference>(const_cast<double*>(data)); }
+template<class Precision> Vector<Dynamic, Precision,
Reference> wrapVector(Precision* data, int size) { return Vector<Dynamic,
Precision, Reference>(data, size); }
+template<class Precision> const Vector<Dynamic, Precision,
Reference> wrapVector(const Precision* data, int size) { return Vector<Dynamic,
Precision, Reference>(const_cast<Precision*>(data), size); }
+template<int Size, class Precision> Vector<Size, Precision,
Reference> wrapVector(Precision* data) { return Vector<Size,
Precision, Reference>(data); }
+template<int Size, class Precision> const Vector<Size, Precision,
Reference> wrapVector(const Precision* data) { return Vector<Size,
Precision, Reference>(const_cast<Precision*>(data)); }
Index: test/test_foreign.cc
===================================================================
RCS file: /cvsroot/toon/TooN/test/test_foreign.cc,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- test/test_foreign.cc 12 Apr 2009 01:23:47 -0000 1.5
+++ test/test_foreign.cc 15 Apr 2009 16:24:19 -0000 1.6
@@ -14,10 +14,6 @@
cout << Matrix<-1,3,double, Reference::RowMajor> (data,2,3) << endl;
cout << Matrix<-1,-1,double, Reference::RowMajor> (data,2,3) << endl;
- cout << Wrap<2,3>::wrap(data) << endl;
- cout << Wrap<2,Dynamic>::wrap(data,3) << endl;
- cout << Wrap<Dynamic,3>::wrap(data,2) << endl;
- cout << Wrap<Dynamic, Dynamic>::wrap(data,2,3) << endl;
cout << Matrix<2,3,double, Reference::ColMajor> (data) << endl;
@@ -25,12 +21,8 @@
cout << Matrix<-1,3,double, Reference::ColMajor> (data,2,3) << endl;
cout << Matrix<-1,-1,double, Reference::ColMajor> (data,2,3) << endl;
- cout << Wrap<2,3,double,Reference::ColMajor>::wrap(data) << endl;
- cout << Wrap<2,Dynamic,double,Reference::ColMajor>::wrap(data,3) <<
endl;
- cout << Wrap<Dynamic,3,double,Reference::ColMajor>::wrap(data,2) <<
endl;
- cout << Wrap<Dynamic,
Dynamic,double,Reference::ColMajor>::wrap(data,2,3) << endl;
-
-
+ cout << wrapVector<6>(data) << endl;
+ cout << wrapVector(data, 6) << endl;
cout << Vector<6,double,Reference> (data) << endl;
cout << Vector<-1,double,Reference> (data,6) << endl;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Toon-members] TooN internal/reference.hh test/test_foreign.cc,
Edward Rosten <=