summaryrefslogtreecommitdiff
path: root/peripheral/libupm/src/upm.i
blob: e69c63f28e73aec68a1e86d60dcff275736b773b (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
26
27
28
29
30
31
%include "std_string.i"
%include "stdint.i"
%include "upm_exception.i"

%apply int { speed_t };
%apply int { mraa_result_t };
%apply int { mraa::Result };

#if (SWIG_JAVASCRIPT_V8)
%{
	// Because there's no guarantee that v8 will ever call garbage collection,
	// we're adding a function that will allow a user to call it manually
	void cleanUp()
	{
		// Call the v8 garbage collector as long as there is memory to clean up
		// See https://codereview.chromium.org/412163003 for this API change
#if (SWIG_V8_VERSION < 0x032838)
		while (!v8::V8::IdleNotification())
#else
		while (!v8::Isolate::GetCurrent()->IdleNotification(1000))
#endif
		{;}
	}
%}
void cleanUp();
#endif

#if (SWIGJAVA)
%typemap(jtype) jobject runnable "java.lang.Runnable"
%typemap(jstype) jobject runnable "java.lang.Runnable"
#endif