Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
55 lines (38 loc) · 1.63 KB

File metadata and controls

55 lines (38 loc) · 1.63 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// -*- c++ -*-
/*
* Copyright (c) 2010-2012, Jim Bosch
* All rights reserved.
*
* ndarray is distributed under a simple BSD-like license;
* see the LICENSE file that should be present in the root
* of the source distribution, or alternately available at:
* https://github.com/ndarray/ndarray
*/
#ifndef NDARRAY_EIGEN_BP_Array_h_INCLUDED
#define NDARRAY_EIGEN_BP_Array_h_INCLUDED
#include "ndarray/eigen/bp/EigenView.h"
namespace ndarray {
template <typename Scalar, int Rows, int Cols, int Options, int MaxRows, int MaxCols>
class ToBoostPython< Eigen::Array<Scalar,Rows,Cols,Options,MaxRows,MaxCols> > {
public:
typedef Eigen::Array<Scalar,Rows,Cols,Options,MaxRows,MaxCols> Input;
typedef boost::numpy::ndarray result_type;
typedef typename SelectEigenView<Input>::Type View;
static boost::numpy::ndarray apply(Input const & input) {
return ToBoostPython< View >::apply(ndarray::copy(input));
}
};
template <typename Scalar, int Rows, int Cols, int Options, int MaxRows, int MaxCols>
class FromBoostPython< Eigen::Array<Scalar,Rows,Cols,Options,MaxRows,MaxCols> > {
public:
typedef Eigen::Array<Scalar,Rows,Cols,Options,MaxRows,MaxCols> Output;
// Use noncontiguous EigenView ('false' below) because we don't care about the input strides.
typedef typename SelectEigenView<Output,false>::Type View;
explicit FromBoostPython(boost::python::object const & input) : _impl(input) {}
bool convertible() { return _impl.convertible(); }
Output operator()() { return Output(_impl()); }
private:
FromBoostPython< View > _impl;
};
} // namespace ndarray
#endif // !NDARRAY_EIGEN_BP_Matrix_h_INCLUDED
Morty Proxy This is a proxified and sanitized view of the page, visit original site.