1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
#pragma once
#include "i18n.h"
#include <memory>
namespace language
{
/**
* Service class dispatching the getLocalisedString() lookup calls
* to the attached localisation provider.
*/
class LanguageManager :
public ILanguageManager
{
private:
// For now, we only hold one provider instance
ILocalisationProvider::Ptr _provider;
public:
void registerProvider(const ILocalisationProvider::Ptr& instance) override;
void clearProvider() override;
std::string getLocalisedString(const char* stringToLocalise) override;
};
} // namespace
|