Snapdragon® Telematics Application Framework (TelAF) Interface Specification
le_json.h
Go to the documentation of this file.
1 //--------------------------------------------------------------------------------------------------
123 //--------------------------------------------------------------------------------------------------
124 
132 #ifndef LEGATO_JSON_H_INCLUDE_GUARD
133 #define LEGATO_JSON_H_INCLUDE_GUARD
134 
135 
136 //--------------------------------------------------------------------------------------------------
140 //--------------------------------------------------------------------------------------------------
141 typedef enum
142 {
154 }
156 
157 
158 //--------------------------------------------------------------------------------------------------
164 //--------------------------------------------------------------------------------------------------
165 typedef void (* le_json_EventHandler_t)
166 (
167  le_json_Event_t event
168 );
169 
170 
171 //--------------------------------------------------------------------------------------------------
175 //--------------------------------------------------------------------------------------------------
176 typedef enum
177 {
180 }
182 
183 
184 //--------------------------------------------------------------------------------------------------
192 //--------------------------------------------------------------------------------------------------
193 typedef void (* le_json_ErrorHandler_t)
194 (
195  le_json_Error_t error,
196  const char* msg
197 );
198 
199 
200 //--------------------------------------------------------------------------------------------------
205 //--------------------------------------------------------------------------------------------------
206 typedef struct le_json_ParsingSession* le_json_ParsingSessionRef_t;
207 
208 
209 //--------------------------------------------------------------------------------------------------
215 //--------------------------------------------------------------------------------------------------
217 (
218  int fd,
219  le_json_EventHandler_t eventHandler,
220  le_json_ErrorHandler_t errorHandler,
221  void* opaquePtr
222 );
223 
224 //--------------------------------------------------------------------------------------------------
230 //--------------------------------------------------------------------------------------------------
232 (
233  const char *jsonString,
234  le_json_EventHandler_t eventHandler,
235  le_json_ErrorHandler_t errorHandler,
236  void* opaquePtr
237 );
238 
239 //--------------------------------------------------------------------------------------------------
245 //--------------------------------------------------------------------------------------------------
246 void le_json_Cleanup
247 (
249 );
250 
251 
252 //--------------------------------------------------------------------------------------------------
258 //--------------------------------------------------------------------------------------------------
260 (
261  le_json_EventHandler_t callbackFunc
262 );
263 
264 
265 //--------------------------------------------------------------------------------------------------
269 //--------------------------------------------------------------------------------------------------
270 typedef enum
271 {
281 }
283 
284 
285 //--------------------------------------------------------------------------------------------------
293 //--------------------------------------------------------------------------------------------------
295 (
296  void
297 );
298 
299 
300 //--------------------------------------------------------------------------------------------------
306 //--------------------------------------------------------------------------------------------------
308 (
309  void* ptr
310 );
311 
312 
313 //--------------------------------------------------------------------------------------------------
322 //--------------------------------------------------------------------------------------------------
324 (
325  void
326 );
327 
328 
329 //--------------------------------------------------------------------------------------------------
335 //--------------------------------------------------------------------------------------------------
337 (
338  le_json_ErrorHandler_t callbackFunc
339 );
340 
341 
342 //--------------------------------------------------------------------------------------------------
351 //--------------------------------------------------------------------------------------------------
352 const char* le_json_GetString
353 (
354  void
355 );
356 
357 
358 //--------------------------------------------------------------------------------------------------
365 //--------------------------------------------------------------------------------------------------
366 double le_json_GetNumber
367 (
368  void
369 );
370 
371 
372 //--------------------------------------------------------------------------------------------------
376 //--------------------------------------------------------------------------------------------------
377 const char* le_json_GetEventName
378 (
379  le_json_Event_t event
380 );
381 
382 
383 //--------------------------------------------------------------------------------------------------
387 //--------------------------------------------------------------------------------------------------
388 const char* le_json_GetContextName
389 (
390  le_json_ContextType_t context
391 );
392 
393 
394 //--------------------------------------------------------------------------------------------------
398 //--------------------------------------------------------------------------------------------------
400 (
402 );
403 
404 
405 //--------------------------------------------------------------------------------------------------
414 //--------------------------------------------------------------------------------------------------
416 (
417  void
418 );
419 
420 
421 #endif // LEGATO_JSON_H_INCLUDE_GUARD
struct le_json_ParsingSession * le_json_ParsingSessionRef_t
Definition: le_json.h:206
le_json_ContextType_t
Definition: le_json.h:270
le_json_ContextType_t le_json_GetContextType(void)
void le_json_SetEventHandler(le_json_EventHandler_t callbackFunc)
number value received: call le_json_GetNumber() to get value
Definition: le_json.h:149
Parsing an array (list of unnamed elements).
Definition: le_json.h:275
string value received: call le_json_GetString() to get value
Definition: le_json.h:148
le_json_Event_t
Definition: le_json.h:141
void(* le_json_EventHandler_t)(le_json_Event_t event)
Definition: le_json.h:166
Parsing an object (set of named members).
Definition: le_json.h:273
Error when reading from the input byte stream.
Definition: le_json.h:179
size_t le_json_GetBytesRead(le_json_ParsingSessionRef_t session)
void le_json_SetOpaquePtr(void *ptr)
Syntax error, such as a missing comma or extra comma.
Definition: le_json.h:178
Parsing number value.
Definition: le_json.h:277
object member name received: Call le_json_GetString() to get name
Definition: le_json.h:144
End of the document reached. Parsing has stopped.
Definition: le_json.h:153
Parsing a true value.
Definition: le_json.h:278
const char * le_json_GetEventName(le_json_Event_t event)
Top level of document, outside the main object/array.
Definition: le_json.h:272
Parsing a member of an object.
Definition: le_json.h:274
void le_json_SetErrorHandler(le_json_ErrorHandler_t callbackFunc)
void(* le_json_ErrorHandler_t)(le_json_Error_t error, const char *msg)
Definition: le_json.h:194
false value received
Definition: le_json.h:151
void le_json_Cleanup(le_json_ParsingSessionRef_t session)
Parsing a null value.
Definition: le_json.h:280
const char * le_json_GetString(void)
void * le_json_GetOpaquePtr(void)
const char * le_json_GetContextName(le_json_ContextType_t context)
le_json_ParsingSessionRef_t le_json_GetSession(void)
double le_json_GetNumber(void)
le_json_ParsingSessionRef_t le_json_ParseString(const char *jsonString, le_json_EventHandler_t eventHandler, le_json_ErrorHandler_t errorHandler, void *opaquePtr)
true value received
Definition: le_json.h:150
null value received
Definition: le_json.h:152
array started, upcoming values are elements of this array
Definition: le_json.h:146
Parsing a false value.
Definition: le_json.h:279
Parsing a string value.
Definition: le_json.h:276
object started, subsequent object members are part of this object
Definition: le_json.h:143
array finished, subsequent values are outside this array
Definition: le_json.h:147
#define LE_FULL_API
Definition: le_apiFeatures.h:42
LE_FULL_API le_json_ParsingSessionRef_t le_json_Parse(int fd, le_json_EventHandler_t eventHandler, le_json_ErrorHandler_t errorHandler, void *opaquePtr)
object finished, subsequent members/values are outside this object
Definition: le_json.h:145
le_json_Error_t
Definition: le_json.h:176