Initial commit
This commit is contained in:
69
Include/ZUtil/ZJSONReader.hpp
Normal file
69
Include/ZUtil/ZJSONReader.hpp
Normal file
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
ZJSONReader.hpp
|
||||
Author: Chris Ertel <crertel@762studios.com>
|
||||
Created: 3/26/2013
|
||||
|
||||
Purpose:
|
||||
|
||||
JSON reading support, to convert JSON strings into ZKVTrees.
|
||||
|
||||
License:
|
||||
|
||||
TODO
|
||||
|
||||
*/
|
||||
#pragma once
|
||||
#ifndef _ZJSONREADER_H
|
||||
#define _ZJSONREADER_H
|
||||
|
||||
#include <ZUtil/ZKVTree.hpp>
|
||||
#include <ZUtil/ZSmartPointer.hpp>
|
||||
|
||||
/*
|
||||
ZJSONReader class, which converts JSON data into a ZKVTree that can be used to access / iterate
|
||||
the data.
|
||||
*/
|
||||
class ZJSONReader
|
||||
{
|
||||
private:
|
||||
DISABLE_COPY_AND_ASSIGN(ZJSONReader);
|
||||
|
||||
//Error Message (if an error has happened)
|
||||
ZString ErrorMessage;
|
||||
const ZString JSONData;
|
||||
|
||||
//Registry of data
|
||||
ZPtr<ZKVTree> Registry;
|
||||
|
||||
public:
|
||||
/*
|
||||
Parameterized Constructor.
|
||||
|
||||
@param _jsonData - string containing JSON data to parse
|
||||
*/
|
||||
ZJSONReader(const ZString& _jsonData);
|
||||
|
||||
/*
|
||||
public ZJSONReader::GetErrorString
|
||||
|
||||
Gets the error message generated while loading the data if loading failed. If loading
|
||||
the data was successful, this returns an empty string.
|
||||
|
||||
@return (const ZString&) - error message string
|
||||
*/
|
||||
const ZString& GetErrorString();
|
||||
|
||||
/*
|
||||
public ZJSONReader::GetKVTree
|
||||
|
||||
Gets the registry that was constructed from the parsed JSON data. If the loading failed,
|
||||
the pointer returned is NULL.
|
||||
|
||||
TODO - describe the format
|
||||
|
||||
@return (ZPtr<ZRegistry>) - registry containing the parsed JSON data
|
||||
*/
|
||||
ZPtr<ZKVTree> GetKVTree();
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user