All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
BMFontTextReader.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 #include "BMFont.h"
7 #include "Fonts.h"
8 #include <string>
9 
10 namespace Eegeo
11 {
12  namespace Fonts
13  {
14  namespace BMFont
15  {
21  {
22  public:
27  bool ParseFontFile(std::istream& stream, BMFontReaderResult& fontReaderResult);
28  private:
29  void InterpretInfo(const std::string &str, int start, BMFontInfo& out_fontInfo);
30  void InterpretCommon(const std::string &str, int start, BMFontCommon& out_fontCommon);
31  int InterpretCount(const std::string &str, int start);
32  void InterpretPage(const std::string &str, int start, std::string& out_filename, int& out_pageId);
33  void InterpretChar(const std::string &str, int start, u32& out_charUnicode, FontCharacter& out_fontCharacter);
34  void InterpretKerning(const std::string &str, int start, BMFontKerning& kerningInfo);
35  int SkipWhiteSpace(const std::string &str, u32 start);
36  int FindEndOfToken(const std::string& str, u32 start);
37  };
38  }
39  }
40 }