From eba8b43987f6bb63102a337e8f538ad3da81510b Mon Sep 17 00:00:00 2001 From: Ryusuke SEKIYAMA Date: Sun, 2 Sep 2012 17:39:14 +0900 Subject: [PATCH] Prepare to convert between PHP types and OpenCL C types. --- params.c | 19 +++++++++++++++++++ params.h | 8 +++++++- php_opencl.h | 2 +- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/params.c b/params.c index 9af9f59..c4933e5 100644 --- a/params.c +++ b/params.c @@ -57,6 +57,25 @@ cl_device_id *phpcl_get_devicecs(zval *zv, int argno, cl_uint *num_devices_ret T return devices; } +/* }}} */ +/* {{{ phpcl_convert_zval_to_c() */ + +zend_bool phpcl_convert_zval_to_c(zval *zv, phpcl_c_type_t type, + void **value_ptr_ret, size_t *size_ret TSRMLS_DC) +{ + /* not yet implemented */ + return 0; +} + +/* }}} */ +/* {{{ phpcl_convert_c_to_zval() */ + +zval *phpcl_convert_c_to_zval(void *value_ptr, phpcl_c_type_t type TSRMLS_DC) +{ + /* not yet implemented */ + return NULL; +} + /* }}} */ /* diff --git a/params.h b/params.h index 525b284..9b71dc0 100644 --- a/params.h +++ b/params.h @@ -14,7 +14,13 @@ zend_bool phpcl_is_callable(zval *zv, int argno TSRMLS_DC); -cl_device_id *phpcl_get_devicecs(zval *zv, int argno, cl_uint *num_devices_ret TSRMLS_DC); +cl_device_id *phpcl_get_devicecs(zval *zv, int argno, + cl_uint *num_devices_ret TSRMLS_DC); + +zend_bool phpcl_convert_zval_to_c(zval *zv, phpcl_c_type_t type, + void **value_ptr_ret, size_t *size_ret TSRMLS_DC); + +zval *phpcl_convert_c_to_zval(void *value_ptr, phpcl_c_type_t type TSRMLS_DC); #endif diff --git a/php_opencl.h b/php_opencl.h index f9386da..8a9ab96 100644 --- a/php_opencl.h +++ b/php_opencl.h @@ -101,7 +101,7 @@ typedef enum { /* pointer */ C_TYPE_MEM_PTR, C_TYPE_NULL_PTR -} phpcl_opencl_c_type_t; +} phpcl_c_type_t; typedef struct { cl_context context;