#include "error.h" #ifndef __PYOPENCL_CONTEXT_H #define __PYOPENCL_CONTEXT_H namespace pyopencl { // {{{ context extern template class clobj; extern template void print_arg(std::ostream&, const cl_context&, bool); extern template void print_buf(std::ostream&, const cl_context*, size_t, ArgType, bool, bool); class context : public clobj { public: PYOPENCL_DEF_CL_CLASS(CONTEXT); PYOPENCL_INLINE context(cl_context ctx, bool retain) : clobj(ctx) { if (retain) { pyopencl_call_guarded(clRetainContext, this); } } ~context(); generic_info get_info(cl_uint param_name) const; }; extern template void print_clobj(std::ostream&, const context*); // }}} } #endif