Browse Source

Data interface: use a new enum type <enum starpu_data_interface_id> for the data interface ids

Nathalie Furmento 14 years ago
parent
commit
7ab5516114
2 changed files with 15 additions and 13 deletions
  1. 14 12
      include/starpu_data_interfaces.h
  2. 1 1
      src/core/task.c

+ 14 - 12
include/starpu_data_interfaces.h

@@ -87,6 +87,18 @@ struct starpu_data_copy_methods {
 #endif
 #endif
 };
 };
 
 
+enum starpu_data_interface_id {
+	STARPU_MATRIX_INTERFACE_ID=0,
+	STARPU_BLOCK_INTERFACE_ID=1,
+	STARPU_VECTOR_INTERFACE_ID=2,
+	STARPU_CSR_INTERFACE_ID=3,
+	STARPU_BCSR_INTERFACE_ID=4,
+	STARPU_VARIABLE_INTERFACE_ID=5,
+	STARPU_VOID_INTERFACE_ID=6,
+	STARPU_MULTIFORMAT_INTERFACE_ID=7,
+	STARPU_NINTERFACES_ID=8 /* number of data interfaces */
+};
+
 struct starpu_data_interface_ops {
 struct starpu_data_interface_ops {
 	/* Register an existing interface into a data handle. */
 	/* Register an existing interface into a data handle. */
 	void (*register_data_handle)(starpu_data_handle handle,
 	void (*register_data_handle)(starpu_data_handle handle,
@@ -112,7 +124,7 @@ struct starpu_data_interface_ops {
 	int (*convert_to_gordon)(void *data_interface, uint64_t *ptr, gordon_strideSize_t *ss); 
 	int (*convert_to_gordon)(void *data_interface, uint64_t *ptr, gordon_strideSize_t *ss); 
 #endif
 #endif
 	/* an identifier that is unique to each interface */
 	/* an identifier that is unique to each interface */
-	unsigned interfaceid;
+	enum starpu_data_interface_id interfaceid;
 	/* The size of the interface data descriptor */
 	/* The size of the interface data descriptor */
 	size_t interface_size;
 	size_t interface_size;
 };
 };
@@ -364,17 +376,7 @@ void starpu_multiformat_data_register(starpu_data_handle *handle,
 
 
 #define STARPU_MULTIFORMAT_GET_NX(interface)  (((starpu_multiformat_interface_t *)(interface))->nx)
 #define STARPU_MULTIFORMAT_GET_NX(interface)  (((starpu_multiformat_interface_t *)(interface))->nx)
 
 
-#define STARPU_MATRIX_INTERFACE_ID	0
-#define STARPU_BLOCK_INTERFACE_ID	1
-#define STARPU_VECTOR_INTERFACE_ID	2
-#define STARPU_CSR_INTERFACE_ID		3
-#define STARPU_BCSR_INTERFACE_ID	4
-#define STARPU_VARIABLE_INTERFACE_ID	5
-#define STARPU_VOID_INTERFACE_ID	6
-#define STARPU_MULTIFORMAT_INTERFACE_ID 7
-#define STARPU_NINTERFACES_ID		8 /* number of data interfaces */
-
-unsigned starpu_get_handle_interface_id(starpu_data_handle);
+enum starpu_data_interface_id starpu_get_handle_interface_id(starpu_data_handle);
 
 
 /* Lookup a ram pointer into a StarPU handle */
 /* Lookup a ram pointer into a StarPU handle */
 extern starpu_data_handle starpu_data_lookup(const void *ptr);
 extern starpu_data_handle starpu_data_lookup(const void *ptr);

+ 1 - 1
src/core/task.c

@@ -440,7 +440,7 @@ double _starpu_task_get_conversion_time(struct starpu_task *task)
 
 
 	for (i = 0; i < task->cl->nbuffers; i++) {
 	for (i = 0; i < task->cl->nbuffers; i++) {
 		starpu_data_handle handle = task->buffers[i].handle;
 		starpu_data_handle handle = task->buffers[i].handle;
-		unsigned int id = starpu_get_handle_interface_id(handle);
+		enum starpu_data_interface_id id = starpu_get_handle_interface_id(handle);
 		if (id == STARPU_MULTIFORMAT_INTERFACE_ID) {
 		if (id == STARPU_MULTIFORMAT_INTERFACE_ID) {
 			starpu_multiformat_interface_t *tmp;
 			starpu_multiformat_interface_t *tmp;
 			uint32_t node = starpu_worker_get_memory_node(task->workerid);
 			uint32_t node = starpu_worker_get_memory_node(task->workerid);