00001 // Copyright Jim Bosch 2010-2012. 00002 // Distributed under the Boost Software License, Version 1.0. 00003 // (See accompanying file LICENSE_1_0.txt or copy at 00004 // http://www.boost.org/LICENSE_1_0.txt) 00005 #ifndef BOOST_NUMPY_SCALARS_HPP_INCLUDED 00006 #define BOOST_NUMPY_SCALARS_HPP_INCLUDED 00007 00013 #include <boost/python.hpp> 00014 #include <boost/numpy/numpy_object_mgr_traits.hpp> 00015 #include <boost/numpy/dtype.hpp> 00016 00017 namespace boost 00018 { 00019 namespace numpy 00020 { 00021 00027 class void_ : public python::object 00028 { 00029 static python::detail::new_reference convert(object_cref arg, bool align); 00030 public: 00031 00041 explicit void_(Py_ssize_t size); 00042 00043 BOOST_PYTHON_FORWARD_OBJECT_CONSTRUCTORS(void_, object); 00044 00046 void_ view(dtype const & dt) const; 00047 00049 void_ copy() const; 00050 00051 }; 00052 00053 } // namespace boost::numpy 00054 00055 namespace python 00056 { 00057 namespace converter 00058 { 00059 NUMPY_OBJECT_MANAGER_TRAITS(numpy::void_); 00060 } // namespace boost::python::converter 00061 } // namespace boost::python 00062 } // namespace boost 00063 00064 #endif // !BOOST_NUMPY_SCALARS_HPP_INCLUDED