From 154f084f1b662546ef539762339483bd595170b0 Mon Sep 17 00:00:00 2001 From: winlin Date: Fri, 16 May 2014 11:56:43 +0800 Subject: [PATCH] add comments for json --- trunk/src/app/srs_app_json.hpp | 64 +++++++++++++++++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-) diff --git a/trunk/src/app/srs_app_json.hpp b/trunk/src/app/srs_app_json.hpp index 00c8ea42d..fda39b35a 100644 --- a/trunk/src/app/srs_app_json.hpp +++ b/trunk/src/app/srs_app_json.hpp @@ -29,7 +29,48 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #include -// json encode macros +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// +/* json encode + cout<< JOBJECT_START + << JFIELD_STR("name", "srs") << JFIELD_CONT + << JFIELD_ORG("version", 100) << JFIELD_CONT + << JFIELD_NAME("features") << JOBJECT_START + << JFIELD_STR("rtmp", "released") << JFIELD_CONT + << JFIELD_STR("hls", "released") << JFIELD_CONT + << JFIELD_STR("dash", "plan") + << JOBJECT_END << JFIELD_CONT + << JFIELD_STR("author", "srs team") + << JOBJECT_END +it's: + cont<< "{" + << "name:" << "srs" << "," + << "version:" << 100 << "," + << "features:" << "{" + << "rtmp:" << "released" << "," + << "hls:" << "released" << "," + << "dash:" << "plan" + << "}" << "," + << "author:" << "srs team" + << "}" +that is: + """ + { + "name": "srs", + "version": 100, + "features": { + "rtmp": "released", + "hls": "released", + "dash": "plan" + }, + "author": "srs team" + } + """ +*/ +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// #define JOBJECT_START "{" #define JFIELD_NAME(k) "\"" << k << "\":" #define JFIELD_STR(k, v) "\"" << k << "\":\"" << v << "\"" @@ -40,4 +81,25 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #define JARRAY_START "[" #define JARRAY_END "]" +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// +// json decode +// 1. SrsJsonAny: read any from stream +// SrsJsonAny* pany = NULL; +// if ((ret = srs_json_read_any(stream, &pany)) != ERROR_SUCCESS) { +// return ret; +// } +// srs_assert(pany); // if success, always valid object. +// 2. SrsJsonAny: convert to specifid type, for instance, string +// SrsJsonAny* pany = ... +// if (pany->is_string()) { +// string v = pany->to_str(); +// } +// +// for detail usage, see interfaces of each object. +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////// + #endif \ No newline at end of file