104 lines
2.3 KiB
C
104 lines
2.3 KiB
C
|
#ifndef HALIBUT_ENGINE_INTERFACE_H_INCLUDED
|
||
|
#define HALIBUT_ENGINE_INTERFACE_H_INCLUDED
|
||
|
|
||
|
#include "include/ApplicationInterface.h"
|
||
|
|
||
|
#include "include/TextureManager/SalmonTexture.h"
|
||
|
#include "include/ShaderManager/ShaderManager.h"
|
||
|
#include "include/ScriptManager/ScriptManager.h"
|
||
|
#include "include/GUIManager/GUIManager.h"
|
||
|
#include "include/FrameManager/FrameManager.h"
|
||
|
#include "include/FontManager/FontManager.h"
|
||
|
#include "include/HalibutAnimation/HalibutAnimation.h"
|
||
|
#include "include/SmartValueManager/SmartValueManager.h"
|
||
|
|
||
|
|
||
|
|
||
|
#ifdef TARGET_WIN32
|
||
|
#include "include/SoundManager/SoundManagerWindows.h"
|
||
|
#endif
|
||
|
#ifdef TARGET_ANDROID
|
||
|
#include "include/SoundManager/SoundManagerAndroid.h"
|
||
|
#endif
|
||
|
#ifdef TARGET_IOS
|
||
|
#include "include/SoundManager/SoundManagerIos.h"
|
||
|
#endif
|
||
|
|
||
|
namespace SE
|
||
|
{
|
||
|
|
||
|
//Windows only
|
||
|
struct TMouseState
|
||
|
{
|
||
|
int X;
|
||
|
int Y;
|
||
|
bool LeftButtonPressed;
|
||
|
bool MiddleButtonPressed;
|
||
|
bool RightButtonPressed;
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
class THalibutResourceManager
|
||
|
{
|
||
|
public:
|
||
|
std::string PathToResources;
|
||
|
|
||
|
TTextureListClass TexList;
|
||
|
TShaderManager ShaderManager;
|
||
|
TScriptManager ScriptManager;
|
||
|
TGUIManager GUIManager;
|
||
|
TFrameManager FrameManager;
|
||
|
TFontManager FontManager;
|
||
|
THalibutAnimationManager HalibutAnimationManager;
|
||
|
TSmartValueManager SmartValueManager;
|
||
|
|
||
|
#ifdef TARGET_WIN32
|
||
|
TSoundManagerWindows SoundManager;
|
||
|
#endif
|
||
|
#ifdef TARGET_ANDROID
|
||
|
TSoundManagerAndroid SoundManager;
|
||
|
#endif
|
||
|
#ifdef TARGET_IOS
|
||
|
TSoundManagerIos SoundManager;
|
||
|
#endif
|
||
|
};
|
||
|
|
||
|
|
||
|
class TApplicationAncestor : public TApplicationInterface
|
||
|
{
|
||
|
protected:
|
||
|
|
||
|
public:
|
||
|
|
||
|
TApplicationAncestor();
|
||
|
|
||
|
//If you override them, call ancestor:
|
||
|
virtual void OuterDraw();
|
||
|
virtual void OuterUpdate(cardinal dt);
|
||
|
|
||
|
|
||
|
virtual void OuterOnTapDown(vec2 p);
|
||
|
virtual void OuterOnTapUp(vec2 p);
|
||
|
virtual void OuterOnMove(vec2 shift);
|
||
|
|
||
|
virtual void InnerOnTapDown(vec2 p) { }
|
||
|
|
||
|
virtual void InnerOnTapUp(vec2 p) { }
|
||
|
|
||
|
virtual void InnerOnMove(vec2 shift) { }
|
||
|
|
||
|
virtual void OnFling(vec2 v) { } //Android only
|
||
|
|
||
|
virtual void OnMouseMove(TMouseState& mouseState) { } //Windows only
|
||
|
|
||
|
virtual void OnMouseWheel(short int delta) { } //Windows only
|
||
|
|
||
|
virtual void OnKeyPress(cardinal key) { } //Try not to override this. But if you need to override, call ancestor!
|
||
|
|
||
|
};
|
||
|
|
||
|
} //namespace SE
|
||
|
|
||
|
#endif
|