SDL Breakout Engine  0.1.0
An implementation of a Breakout game using sdl, implemented with efficient resource management.
LocalizationManager.hpp
Go to the documentation of this file.
1 #ifndef LOCALIZATION_HPP
2 #define LOCALIZATION_HPP
3 
4 #include <iostream>
5 #include <string>
6 #include <fstream>
7 #include <memory>
8 #include <sstream>
9 #include <map>
10 #include <vector>
11 
12 #include <locale>
13 #include <codecvt>
14 
15 using namespace std;
16 
21 {
25 };
26 
33 static Language toLanguage(string l)
34 {
35  if (l == "english")
36  {
37  return Language::English;
38  }
39  else if (l == "spanish")
40  {
41  return Language::Spanish;
42  }
43  else
44  {
45  return Language::UnSupported;
46  }
47 }
48 
53 {
54 public:
60  Translator(std::map<wstring, wstring> phraseTranslations);
61 
67  wstring translate(wstring s1);
68 
69 private:
70  std::map<std::wstring, std::wstring> mapping;
71 };
72 
85 {
86 public:
87  LocalizationManager() = delete;
88  LocalizationManager(const LocalizationManager &lm) = delete;
89  void operator=(const LocalizationManager &lm) = delete;
90 
97  static unique_ptr<Translator> Load(Language l1, Language l2);
98 };
99 
100 #endif
Definition: LocalizationManager.hpp:84
Definition: LocalizationManager.hpp:52
static Language toLanguage(string l)
Definition: LocalizationManager.hpp:33
Definition: LocalizationManager.hpp:24
Definition: LocalizationManager.hpp:23
Definition: LocalizationManager.hpp:22
Language
Definition: LocalizationManager.hpp:20