CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
ApplePlatform.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
12
14
16
17#if defined(__OBJC__)
18#include <Foundation/Foundation.h>
19#endif
20
21namespace CeresEngine {
22
23 class Engine;
24
25#if defined(__OBJC__)
27 NSString* toNSString(StringView string) noexcept;
28
30 String fromNSString(NSString* string) noexcept;
31#endif
32
35 public:
36 struct Pimpl;
37 friend struct Pimpl;
38
39 private:
42
43 public:
46
49
50 public: // Main RunLoop
52 void run() override;
53
55 void stop() override;
56
57 public: // Queues
60
61 public: // FileSystem
64 };
65
66} // namespace CeresEngine
A platform implementation for Apple.
Definition ApplePlatform.hpp:34
void stop() override
Requests the application to stop running.
UPtr< Pimpl > m
Hidden implementation class for the platform.
Definition ApplePlatform.hpp:41
void run() override
Starts running the main application run loop.
UPtr< DispatchQueue > createDispatchQueue(DispatchQueueType type, StringView name="") final
Creates a new queue to which you can submit blocks.
friend struct Pimpl
Definition ApplePlatform.hpp:37
ApplePlatform(Engine &engine)
Creates a new Apple platform instance.
~ApplePlatform() noexcept override
Creates a new Apple platform instance.
IFileSystem * getLocalFileSystem() const override
Gets the underlying platform local file system implementation.
An object that manages the execution of tasks serially or concurrently on your app's main thread or o...
Definition DispatchQueue.hpp:36
Definition Engine.hpp:38
Interface for accessing file systems.
Definition FileSystem.hpp:28
A platform implementation for POSIX-based systems.
Definition POSIXPlatform.hpp:15
Definition Application.hpp:19
std::unique_ptr< T, Deleter > UPtr
UPtr is a smart pointer that owns and manages another object through a pointer and disposes of that o...
Definition SmartPtr.hpp:28
BasicStringView< char > StringView
Narrow string view used for handling narrow encoded text in UTF-8.
Definition String.hpp:190
DispatchQueueType
Specifies the type of the queue.
Definition DispatchQueue.hpp:17
BasicString< char > String
Narrow string used for handling narrow encoded text in UTF-8.
Definition String.hpp:163
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25