rag
graphic 2d engine
Platform.h
1 #ifndef _RAG_PLATFORM_H_
2 #define _RAG_PLATFORM_H_
3 
4 
5 
6 
7 #include <algorithm>
8 
9 
10 
11 
12 #ifdef _WIN32
13 
14 #pragma warning( once : 4018 4244 4305 )
15 
16 #include <Windows.h>
17 #include <GLES2/gl2.h>
18 #include <GLES2/gl2ext.h>
19 #include <EGL/egl.h>
20 #include "win/winUtils.h"
21 
22 #define HAVE_STRUCT_TIMESPEC // pthreads compatibility in Windows 7
23 
24 #define LOGI(...) WinUtils::win32_printf(__VA_ARGS__);
25 #define LOGE(...) WinUtils::win32_printfe(__VA_ARGS__);
26 
27 #endif
28 
29 
30 
31 #ifdef __APPLE__
32 
33 #include <OpenGLES/ES2/gl.h>
34 #include <OpenGLES/ES2/glext.h>
35 #include "ios/iosUtils.h"
36 #include <sys/time.h>
37 
38 
39 
40 #define LOGI(...) {rag::iosUtils::iosLog(__VA_ARGS__);}
41 #define LOGE(...) {rag::iosUtils::iosLogError(__VA_ARGS__);}
42 
43 
44 
45 #endif // __APPLE__
46 
47 
48 
49 #ifdef ANDROID
50 
51 #include <jni.h>
52 #include <android/log.h>
53 #include <android_native_app_glue.h>
54 #include <GLES2/gl2.h>
55 #include <GLES2/gl2ext.h>
56 #include "android/androidUtils.h"
57 #include <sys/time.h>
58 
59 #define STRINGIFY(x) #x
60 #define LOG_TAG __FILE__ ":" STRINGIFY(__LINE__)
61 #define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO,LOG_TAG, __VA_ARGS__))
62 #define LOGE(...) ((void)__android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__))
63 
64 #else
65 
66 #ifdef __linux__
67 #include "linux/linuxUtils.h"
68 #define LOGI(...) {linuxUtils::log(__VA_ARGS__);}
69 #define LOGE(...) {linuxUtils::log(__VA_ARGS__);}
70 #include <stdio.h>
71 #include <sys/time.h>
72 #include <string.h>
73 #include <GLES2/gl2.h>
74 #include <GLES2/gl2ext.h>
75 #endif
76 
77 #endif
78 
79 
80 
81 #endif