You.i Engine
YiFramework.h
Go to the documentation of this file.
1 // © You i Labs Inc. 2000-2017. All rights reserved.
2 #ifndef _YI_FRAMEWORK_H_
3 #define _YI_FRAMEWORK_H_
4 
6 #include "framework/YiPredef.h"
8 
9 
10 class CYITextEngine;
11 class CYIAssetLoader;
12 class CYIAssetManager;
13 class CYIAudioEngine;
14 class CYITime;
15 class CYIMutex;
16 class CYIFrameworkPriv;
18 class CYITranslation;
19 class CYIThreadPools;
20 
33 {
34 public:
35  virtual ~CYIFramework() override;
36 
40  static void SetFrameworkConfiguration(const CYIFrameworkConfiguration &frameworkConfiguration);
41 
46  static CYIFramework *GetInstance();
47 
49 
51 
53 
55 
56  CYITime *GetTime();
57 
59 
61 
63 
64 private:
65  CYIFramework(CYIFrameworkConfiguration &frameworkConfiguration);
66 
67  static CYIFramework *s_pFrameworkSingleton;
68 
69  static CYIMutex s_FrameworkMutex;
70 
71  static CYIFrameworkConfiguration s_FrameworkConfiguration;
72 
73  CYIFrameworkPriv *m_pPriv;
74 
76 };
77 
80 #endif // _YI_FRAMEWORK_H_
CYIAssetLoader * GetAssetLoader()
Provides text-to-speech functionality using the underlying platform's technology. ...
Definition: YiSpeechSynthesizer.h:23
#define YI_DISALLOW_COPY_AND_ASSIGN(TypeName)
Delete the copy constructor and assignment operator (and consequently the move constructor as well) ...
Definition: YiPredef.h:114
CYIAssetManager * GetAssetManager()
Definition: YiMutex.h:110
Provides string localization.
Definition: YiTranslation.h:68
static CYIFramework * GetInstance()
Class for text rendering.
Definition: YiTextEngine.h:129
The base class for an object accessible from script source code.
Definition: YiScriptableObject.h:28
CYIAudioEngine * GetAudioEngine()
CYIThreadPools * GetThreadPools() const
CYIFrameworkConfiguration is used to specify configuration settings for the CYIFramework class...
Definition: YiFrameworkConfiguration.h:17
CYITranslation * GetTranslation() const
static void SetFrameworkConfiguration(const CYIFrameworkConfiguration &frameworkConfiguration)
CYISpeechSynthesizer * GetSpeechSynthesizer() const
global class used to notify the system of time updates
Definition: YiTime.h:24
CYITime * GetTime()
Object responsible for processing audio streams and output to the platform.
Definition: YiAudioEngine.h:30
This class provides a cache that users can use to store various types of assets.
Definition: YiAssetManager.h:43
Definition: YiThreadPools.h:58
CYIFramework is a singleton class used to acquire global instances of a number of classes...
Definition: YiFramework.h:32
virtual ~CYIFramework() override
CYITextEngine * GetTextEngine()
The asset loader provides an interface for loading asset objects, which in turn wrap resource objects...
Definition: YiAssetLoader.h:39