Added the Android port
This commit is contained in:
parent
01b745185e
commit
63bbe2c91e
183 changed files with 40166 additions and 40 deletions
|
@ -70,9 +70,14 @@
|
|||
#elif defined(__unix__)
|
||||
|
||||
// UNIX system, see which one it is
|
||||
#if defined(__linux__)
|
||||
#if defined(__ANDROID__)
|
||||
|
||||
// Linux
|
||||
// Android
|
||||
#define SFML_SYSTEM_ANDROID
|
||||
|
||||
#elif defined(__linux__)
|
||||
|
||||
// Linux
|
||||
#define SFML_SYSTEM_LINUX
|
||||
|
||||
#elif defined(__FreeBSD__)
|
||||
|
|
79
include/SFML/Main/activity.hpp
Normal file
79
include/SFML/Main/activity.hpp
Normal file
|
@ -0,0 +1,79 @@
|
|||
////////////////////////////////////////////////////////////
|
||||
//
|
||||
// SFML - Simple and Fast Multimedia Library
|
||||
// Copyright (C) 2013 Jonathan De Wachter (dewachter.jonathan@gmail.com)
|
||||
//
|
||||
// This software is provided 'as-is', without any express or implied warranty.
|
||||
// In no event will the authors be held liable for any damages arising from the use of this software.
|
||||
//
|
||||
// Permission is granted to anyone to use this software for any purpose,
|
||||
// including commercial applications, and to alter it and redistribute it freely,
|
||||
// subject to the following restrictions:
|
||||
//
|
||||
// 1. The origin of this software must not be misrepresented;
|
||||
// you must not claim that you wrote the original software.
|
||||
// If you use this software in a product, an acknowledgment
|
||||
// in the product documentation would be appreciated but is not required.
|
||||
//
|
||||
// 2. Altered source versions must be plainly marked as such,
|
||||
// and must not be misrepresented as being the original software.
|
||||
//
|
||||
// 3. This notice may not be removed or altered from any source distribution.
|
||||
//
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef SFML_ACTIVITY_HPP
|
||||
#define SFML_ACTIVITY_HPP
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
// Headers
|
||||
////////////////////////////////////////////////////////////
|
||||
#include <android/native_activity.h>
|
||||
#include <android/configuration.h>
|
||||
#include <android/sensor.h>
|
||||
#include <SFML/Window/EGLCheck.hpp>
|
||||
#include <SFML/Window/Event.hpp>
|
||||
#include <SFML/System/Mutex.hpp>
|
||||
#include <vector>
|
||||
|
||||
|
||||
namespace sf
|
||||
{
|
||||
namespace priv
|
||||
{
|
||||
struct ActivityStates
|
||||
{
|
||||
ANativeActivity* activity;
|
||||
ANativeWindow* window;
|
||||
|
||||
ALooper* looper;
|
||||
AInputQueue* inputQueue;
|
||||
AConfiguration* config;
|
||||
|
||||
ASensorManager* sensorManager;
|
||||
const ASensor* accelerometerSensor;
|
||||
ASensorEventQueue* sensorEventQueue;
|
||||
|
||||
EGLDisplay display;
|
||||
|
||||
void* savedState;
|
||||
size_t savedStateSize;
|
||||
|
||||
sf::Mutex mutex;
|
||||
|
||||
std::vector<sf::Event> pendingEvents;
|
||||
|
||||
bool mainOver;
|
||||
|
||||
bool initialized;
|
||||
bool terminated;
|
||||
|
||||
bool updated;
|
||||
};
|
||||
|
||||
ActivityStates* getActivityStates(ActivityStates* initializedStates=NULL);
|
||||
} // namespace priv
|
||||
} // namespace sf
|
||||
|
||||
|
||||
#endif // SFML_ACTIVITY_HPP
|
|
@ -60,7 +60,12 @@
|
|||
|
||||
#include <OpenGLES/ES1/gl.h>
|
||||
#include <OpenGLES/ES1/glext.h>
|
||||
|
||||
|
||||
#elif defined (SFML_SYSTEM_ANDROID)
|
||||
|
||||
#include <GLES/gl.h>
|
||||
#include <GLES/glext.h>
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
|
|
@ -61,6 +61,11 @@ namespace sf
|
|||
// Window handle is UIWindow (void*) on iOS - UIKit
|
||||
typedef void* WindowHandle;
|
||||
|
||||
#elif defined(SFML_SYSTEM_ANDROID)
|
||||
|
||||
// Window handle doesn't exist on Android
|
||||
typedef void* WindowHandle;
|
||||
|
||||
#endif
|
||||
|
||||
} // namespace sf
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue