90 #ifndef INCLUDED_XEROXMB 91 #define INCLUDED_XEROXMB 148 std::map<std::string, int> m_ElementNames;
149 std::map<std::string, int> m_AttributeNames;
169 int GetNodeName()
const;
172 CStr8 GetText()
const;
175 int GetLineNumber()
const;
186 : m_Size(count),
m_Pointer(offset), m_CurItemID(0), m_CurPointer(offset), m_EndPointer(endoffset) {}
190 XMBElement GetFirstNamedItem(
const int ElementName)
const;
204 iterator(
size_t size,
const char* ptr,
const char* endptr = NULL)
205 : m_Size(size), m_CurItemID(endptr ? size : 0), m_CurPointer(endptr ? endptr : ptr),
m_Pointer(ptr) {}
212 return m_Size == rhs.
m_Size &&
226 size_t size()
const {
return m_Size; }
227 bool empty()
const {
return m_Size == 0; }
256 : m_Size(count),
m_Pointer(offset), m_CurItemID(0), m_CurPointer(offset), m_EndPointer(endoffset) {}
259 CStr8 GetNamedItem(
const int AttributeName)
const;
273 iterator(
size_t size,
const char* ptr,
const char* endptr = NULL)
274 : m_Size(size), m_CurItemID(endptr ? size : 0), m_CurPointer(endptr ? endptr : ptr),
m_Pointer(ptr) {}
281 return m_Size == rhs.
m_Size &&
295 size_t size()
const {
return m_Size; }
296 bool empty()
const {
return m_Size == 0; }
311 #endif // INCLUDED_XEROXMB const char * UnfinishedHeaderMagicStr
Definition: XeroXMB.cpp:26
const char * m_EndPointer
Definition: XeroXMB.h:308
const char * m_Pointer
Definition: XeroXMB.h:179
int Name
Definition: XeroXMB.h:246
const char * m_CurPointer
Definition: XeroXMB.h:289
size_t m_Size
Definition: XeroXMB.h:218
Definition: XeroXMB.h:252
ptrdiff_t difference_type
Definition: XeroXMB.h:267
const char * m_Pointer
Definition: XeroXMB.h:302
const u32 XMBVersion
Definition: XeroXMB.cpp:29
int m_AttributeNameCount
Definition: XeroXMB.h:152
size_t size() const
Definition: XeroXMB.h:295
size_t m_CurItemID
Definition: XeroXMB.h:288
int GetElementID(const char *Name) const
Definition: XeroXMB.cpp:117
const char * m_Pointer
Definition: XeroXMB.h:221
XMBElement operator->() const
Definition: XeroXMB.h:207
size_t m_Size
Definition: XeroXMB.h:230
iterator begin()
Definition: XeroXMB.h:223
Definition: XeroXMB.h:182
Definition: XeroXMB.h:160
XMBAttributeList(const char *offset, size_t count, const char *endoffset)
Definition: XeroXMB.h:255
iterator(size_t size, const char *ptr, const char *endptr=NULL)
Definition: XeroXMB.h:204
const char * HeaderMagicStr
Definition: XeroXMB.cpp:25
XMBElement(const char *offset)
Definition: XeroXMB.h:166
iterator(size_t size, const char *ptr, const char *endptr=NULL)
Definition: XeroXMB.h:273
XMBAttribute pointer
Definition: XeroXMB.h:270
bool empty() const
Definition: XeroXMB.h:227
bool operator==(const iterator &rhs) const
Definition: XeroXMB.h:210
XMBAttribute operator->() const
Definition: XeroXMB.h:276
bool operator==(const iterator &rhs) const
Definition: XeroXMB.h:279
bool operator!=(const iterator &rhs) const
Definition: XeroXMB.h:216
bool Initialise(const char *FileData)
Definition: XeroXMB.cpp:39
uint32_t u32
Definition: types.h:39
Definition: XeroXMB.h:195
const char * m_Pointer
Definition: XeroXMB.h:232
Config::Value_type Value
Definition: json_spirit_value.h:181
XMBElement reference
Definition: XeroXMB.h:200
std::string ReadZStr8()
Definition: XeroXMB.cpp:88
XMBElement operator*() const
Definition: XeroXMB.h:206
size_t m_CurItemID
Definition: XeroXMB.h:219
XMBElement pointer
Definition: XeroXMB.h:201
const char * m_CurPointer
Definition: XeroXMB.h:236
Definition: XeroXMB.h:242
std::forward_iterator_tag iterator_category
Definition: XeroXMB.h:202
XMBFile()
Definition: XeroXMB.h:119
const char * m_EndPointer
Definition: XeroXMB.h:238
bool empty() const
Definition: XeroXMB.h:296
XMBElement()
Definition: XeroXMB.h:163
std::string GetElementString(const int ID) const
Definition: XeroXMB.cpp:161
Definition: XeroXMB.h:115
const char * m_ElementPointer
Definition: XeroXMB.h:153
CStr8 Value
Definition: XeroXMB.h:249
const char * m_CurPointer
Definition: XeroXMB.h:220
XMBAttribute()
Definition: XeroXMB.h:244
XMBElement GetRoot() const
Definition: XeroXMB.cpp:97
iterator end() const
Definition: XeroXMB.h:293
Definition: XeroXMB.h:264
XMBAttribute reference
Definition: XeroXMB.h:269
XMBElement value_type
Definition: XeroXMB.h:199
size_t m_CurItemID
Definition: XeroXMB.h:235
const char * m_CurPointer
Definition: XeroXMB.h:306
size_t m_CurItemID
Definition: XeroXMB.h:305
const char * m_Pointer
Definition: XeroXMB.h:145
const char * m_AttributePointer
Definition: XeroXMB.h:154
int GetAttributeID(const char *Name) const
Definition: XeroXMB.cpp:137
size_t size() const
Definition: XeroXMB.h:226
std::string GetAttributeString(const int ID) const
Definition: XeroXMB.cpp:169
XMBAttribute(int name, const CStr8 &value)
Definition: XeroXMB.h:245
int m_ElementNameCount
Definition: XeroXMB.h:151
iterator begin() const
Definition: XeroXMB.h:292
XMBAttribute value_type
Definition: XeroXMB.h:268
iterator end()
Definition: XeroXMB.h:224
std::forward_iterator_tag iterator_category
Definition: XeroXMB.h:271
size_t m_Size
Definition: XeroXMB.h:287
const char * m_Pointer
Definition: XeroXMB.h:290
XMBElementList(const char *offset, size_t count, const char *endoffset)
Definition: XeroXMB.h:185
bool operator!=(const iterator &rhs) const
Definition: XeroXMB.h:285
size_t m_Size
Definition: XeroXMB.h:299
ptrdiff_t difference_type
Definition: XeroXMB.h:198