#pragma once #include "HostSystemServices.h" #include "GpCoreDefs.h" class GpSystemServices_Android final : public PortabilityLayer::HostSystemServices { public: GpSystemServices_Android(); int64_t GetTime() const override; void GetLocalDateTime(unsigned int &year, unsigned int &month, unsigned int &day, unsigned int &hour, unsigned int &minute, unsigned int &second) const override; PortabilityLayer::HostMutex *CreateMutex() override; PortabilityLayer::HostMutex *CreateRecursiveMutex() override; PortabilityLayer::HostThreadEvent *CreateThreadEvent(bool autoReset, bool startSignaled) override; uint64_t GetFreeMemoryCosmetic() const override; void Beep() const override; bool IsTouchscreen() const override; bool IsUsingMouseAsTouch() const override; bool IsTextInputObstructive() const override; static GpSystemServices_Android *GetInstance(); private: static GpSystemServices_Android ms_instance; };