KisaragiLibrary
 
読み取り中…
検索中…
一致する文字列を見つけられません
anonymous_namespace{FontFacade.cpp}::FontFacadeImpl クラス

公開メンバ関数

 FontFacadeImpl ()
 
 ~FontFacadeImpl ()
 
void Add (std::string _key, std::shared_ptr< Font > _font)
 
void Add (std::string _key, std::string _fontName, int _fontSize, int _fontThick, FontType _fontType)
 
std::shared_ptr< FontGet (std::string _key)
 
void Pop (std::string _key)
 

非公開変数類

std::unordered_map< std::string, std::shared_ptr< Kisaragi_Lib::Font > > fontDatas
 

構築子と解体子

◆ FontFacadeImpl()

anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::FontFacadeImpl ( )
inline
22 {
23 Add("Default", GetFontName(), -1, -1,NORMAL);
24 }
void Add(std::string _key, std::shared_ptr< Font > _font)
Definition FontFacade.cpp:32
@ NORMAL
Definition FontFacade.hpp:15

◆ ~FontFacadeImpl()

anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::~FontFacadeImpl ( )
inline
27 {
28 // ウィンドウズに一時的に保持していたフォントデータを削除
29 RemoveFontResourceExA("", FR_PRIVATE, NULL);
30 }

関数詳解

◆ Add() [1/2]

void anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::Add ( std::string _key,
std::shared_ptr< Font > _font )
inline
33 {
34
35 if (_font == nullptr)
36 {
37 Debug::PrintAssertStatic("登録しようとしたFontがnullotrです");
38 return;
39 }
40
41 if (fontDatas.size() >= 40)
42 {
43 Debug::PrintAssertStatic("Fontの登録上限に達しているため 登録できませんでした");
44 return;
45 }
46
47 fontDatas.emplace(_key, _font);
48 }
static void PrintAssertStatic(const std::string _in)
エラー出力用コンソール出力(文字色しか変わらない)
Definition Debug.cpp:152
std::unordered_map< std::string, std::shared_ptr< Kisaragi_Lib::Font > > fontDatas
Definition FontFacade.cpp:15

参照元 FontFacadeImpl().

◆ Add() [2/2]

void anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::Add ( std::string _key,
std::string _fontName,
int _fontSize,
int _fontThick,
FontType _fontType )
inline
51 {
52 if (fontDatas.size() >= 40)
53 {
54 Debug::PrintAssertStatic("Fontの登録上限に達しているため 登録できませんでした");
55 return;
56 }
57
58 std::shared_ptr<Font> _font = Font::CreateMyFont(_fontName, _fontSize, _fontThick, _fontType);
59
60 if (_font == nullptr)
61 {
62 Debug::PrintAssertStatic("登録しようとしたFontがnullotrです");
63 return;
64 }
65
66 fontDatas.emplace(_key, _font);
67 }
static std::shared_ptr< Font > CreateMyFont(std::string _fontName, int _fontSize, int _fontThick, FontType _fontType=NORMAL)
Definition FontFacade.hpp:52

◆ Get()

std::shared_ptr< Font > anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::Get ( std::string _key)
inline
70 {
71 if (fontDatas.count(_key) == 0)
72 {
73 Debug::PrintAssertStatic("_Keyに対応するFontが登録されていません");
74 return fontDatas["Default"];
75 }
76
77 return fontDatas[_key];
78 }

◆ Pop()

void anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::Pop ( std::string _key)
inline
81 {
82 fontDatas.erase(_key);
83 }

メンバ詳解

◆ fontDatas

std::unordered_map<std::string, std::shared_ptr<Kisaragi_Lib::Font> > anonymous_namespace{FontFacade.cpp}::FontFacadeImpl::fontDatas
private

参照元 Add(), Add(), Get(), Pop().


このクラス詳解は次のファイルから抽出されました: