Kaynağa Gözat

Provide helpers for the "block" interface.

Cédric Augonnet 15 yıl önce
ebeveyn
işleme
14c8458f90
1 değiştirilmiş dosya ile 9 ekleme ve 0 silme
  1. 9 0
      include/starpu-data-interfaces.h

+ 9 - 0
include/starpu-data-interfaces.h

@@ -74,6 +74,15 @@ uint32_t starpu_get_block_local_ldz(starpu_data_handle handle);
 uintptr_t starpu_get_block_local_ptr(starpu_data_handle handle);
 size_t starpu_get_block_elemsize(starpu_data_handle handle);
 
+/* helper methods */
+#define GET_BLOCK_PTR(interface)	(((starpu_block_interface_t *)(interface))->ptr)
+#define GET_BLOCK_NX(interface)	(((starpu_block_interface_t *)(interface))->nx)
+#define GET_BLOCK_NY(interface)	(((starpu_block_interface_t *)(interface))->ny)
+#define GET_BLOCK_NZ(interface)	(((starpu_block_interface_t *)(interface))->nz)
+#define GET_BLOCK_LDY(interface)	(((starpu_block_interface_t *)(interface))->ldy)
+#define GET_BLOCK_LDZ(interface)	(((starpu_block_interface_t *)(interface))->ldz)
+#define GET_BLOCK_ELEMSIZE(interface)	(((starpu_block_interface_t *)(interface))->elemsize)
+
 /* vector interface for contiguous (non-strided) buffers */
 typedef struct starpu_vector_interface_s {
 	uintptr_t ptr;