aboutsummaryrefslogtreecommitdiffstats
path: root/CNativeCode/MemoryManager.h
blob: 51271ce332e2faa664ea7dc9c64a57cd15bf75c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef MEMORYMANAGER
	#define MEMORYMANAGER

	#include "jnitools.h"

	typedef enum { MEMM_TESSELATOR, 
		       MEMM_SELECTION,
		       MEMM_LAST
        } ListType;

	#define NUMBER_OF_LISTS ((int)MEMM_LAST)

	typedef struct tnode {
		void *java_array;
		void *native_array;
		JavaBasicType type;
		void *next;
	} ArrayList;

	void RegisterArray(JNIEnv *env, void *java_array, void *native_array, 
	                   JavaBasicType array_type, ListType ltype);

	void FreeArrays(JNIEnv *env, ListType ltype);

#endif