le_cfg_interface.h
Go to the documentation of this file.
25 * Apps can also be granted read or write access to any other tree with any other name (e.g., a tree284 //--------------------------------------------------------------------------------------------------288 //--------------------------------------------------------------------------------------------------291 //--------------------------------------------------------------------------------------------------294 * Connect the current client thread to the service providing this API. Block until the service is297 * For each thread that wants to use this API, either ConnectService or TryConnectService must be298 * called before any other functions in this API. Normally, ConnectService is automatically called303 //--------------------------------------------------------------------------------------------------309 //--------------------------------------------------------------------------------------------------312 * Try to connect the current client thread to the service providing this API. Return with an error315 * For each thread that wants to use this API, either ConnectService or TryConnectService must be316 * called before any other functions in this API. Normally, ConnectService is automatically called325 * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).328 //--------------------------------------------------------------------------------------------------334 //--------------------------------------------------------------------------------------------------338 * When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants341 //--------------------------------------------------------------------------------------------------348 //--------------------------------------------------------------------------------------------------354 * longer a connection to the service, and the functions in this API can't be used. For details, see359 //--------------------------------------------------------------------------------------------------366 //--------------------------------------------------------------------------------------------------370 //--------------------------------------------------------------------------------------------------373 //--------------------------------------------------------------------------------------------------377 //--------------------------------------------------------------------------------------------------380 //--------------------------------------------------------------------------------------------------384 //--------------------------------------------------------------------------------------------------387 //--------------------------------------------------------------------------------------------------391 //--------------------------------------------------------------------------------------------------394 //--------------------------------------------------------------------------------------------------398 //--------------------------------------------------------------------------------------------------402 //--------------------------------------------------------------------------------------------------406 //--------------------------------------------------------------------------------------------------427 //--------------------------------------------------------------------------------------------------431 //--------------------------------------------------------------------------------------------------435 //--------------------------------------------------------------------------------------------------439 //--------------------------------------------------------------------------------------------------441 (446 //--------------------------------------------------------------------------------------------------454 * @note A tree transaction is global to that tree; a long-held read transaction will block other459 //--------------------------------------------------------------------------------------------------467 //--------------------------------------------------------------------------------------------------482 //--------------------------------------------------------------------------------------------------490 //--------------------------------------------------------------------------------------------------497 //--------------------------------------------------------------------------------------------------504 //--------------------------------------------------------------------------------------------------506 * Close and free the given iterator object. If the iterator is a write iterator, the transaction511 //--------------------------------------------------------------------------------------------------518 //--------------------------------------------------------------------------------------------------527 //--------------------------------------------------------------------------------------------------537 //--------------------------------------------------------------------------------------------------546 //--------------------------------------------------------------------------------------------------553 //--------------------------------------------------------------------------------------------------559 * children of this node are not written to, then this node will not persist even if the iterator is567 //--------------------------------------------------------------------------------------------------574 //--------------------------------------------------------------------------------------------------595 //--------------------------------------------------------------------------------------------------602 //--------------------------------------------------------------------------------------------------632 //--------------------------------------------------------------------------------------------------647 //--------------------------------------------------------------------------------------------------653 //--------------------------------------------------------------------------------------------------664 //--------------------------------------------------------------------------------------------------671 //--------------------------------------------------------------------------------------------------686 //--------------------------------------------------------------------------------------------------693 //--------------------------------------------------------------------------------------------------705 //--------------------------------------------------------------------------------------------------709 //--------------------------------------------------------------------------------------------------716 //--------------------------------------------------------------------------------------------------725 //--------------------------------------------------------------------------------------------------736 //--------------------------------------------------------------------------------------------------747 //--------------------------------------------------------------------------------------------------758 //--------------------------------------------------------------------------------------------------767 //--------------------------------------------------------------------------------------------------778 //--------------------------------------------------------------------------------------------------784 //--------------------------------------------------------------------------------------------------795 //--------------------------------------------------------------------------------------------------807 //--------------------------------------------------------------------------------------------------826 //--------------------------------------------------------------------------------------------------833 //--------------------------------------------------------------------------------------------------846 //--------------------------------------------------------------------------------------------------859 //--------------------------------------------------------------------------------------------------873 //--------------------------------------------------------------------------------------------------880 //--------------------------------------------------------------------------------------------------893 //--------------------------------------------------------------------------------------------------904 //--------------------------------------------------------------------------------------------------918 //--------------------------------------------------------------------------------------------------927 //--------------------------------------------------------------------------------------------------940 //--------------------------------------------------------------------------------------------------950 //--------------------------------------------------------------------------------------------------964 //--------------------------------------------------------------------------------------------------971 //--------------------------------------------------------------------------------------------------984 //--------------------------------------------------------------------------------------------------989 //--------------------------------------------------------------------------------------------------997 //--------------------------------------------------------------------------------------------------999 * Make a given node empty. If the node doesn't currently exist then it is created as a new empty1002 //--------------------------------------------------------------------------------------------------1010 //--------------------------------------------------------------------------------------------------1018 //--------------------------------------------------------------------------------------------------1032 //--------------------------------------------------------------------------------------------------1036 //--------------------------------------------------------------------------------------------------1046 //--------------------------------------------------------------------------------------------------1049 * value, then it will be rounded and returned as an integer. Otherwise If the underlying value is1054 //--------------------------------------------------------------------------------------------------1064 //--------------------------------------------------------------------------------------------------1068 //--------------------------------------------------------------------------------------------------1078 //--------------------------------------------------------------------------------------------------1088 //--------------------------------------------------------------------------------------------------1098 //--------------------------------------------------------------------------------------------------1104 //--------------------------------------------------------------------------------------------------1114 //--------------------------------------------------------------------------------------------------1121 //--------------------------------------------------------------------------------------------------1131 //--------------------------------------------------------------------------------------------------1135 //--------------------------------------------------------------------------------------------------void le_cfg_QuickSetInt(const char *path, int32_t value)void le_cfg_QuickSetFloat(const char *path, double value)void le_cfg_DisconnectService(void)void le_cfg_SetBool(le_cfg_IteratorRef_t iteratorRef, const char *path, bool value)void le_cfg_SetString(le_cfg_IteratorRef_t iteratorRef, const char *path, const char *value)bool le_cfg_QuickGetBool(const char *path, bool defaultValue)le_cfg_ChangeHandlerRef_t le_cfg_AddChangeHandler(const char *newPath, le_cfg_ChangeHandlerFunc_t handlerPtr, void *contextPtr)struct le_cfg_ChangeHandler * le_cfg_ChangeHandlerRef_tDefinition: le_cfg_interface.h:432le_result_t le_cfg_GoToNextSibling(le_cfg_IteratorRef_t iteratorRef)void le_cfg_SetFloat(le_cfg_IteratorRef_t iteratorRef, const char *path, double value)void(* le_cfg_DisconnectHandler_t)(void *)Definition: le_cfg_interface.h:289le_cfg_IteratorRef_t le_cfg_CreateReadTxn(const char *basePath)le_result_t le_cfg_GetPath(le_cfg_IteratorRef_t iteratorRef, const char *path, char *pathBuffer, size_t pathBufferSize)int32_t le_cfg_GetInt(le_cfg_IteratorRef_t iteratorRef, const char *path, int32_t defaultValue)double le_cfg_QuickGetFloat(const char *path, double defaultValue)void le_cfg_ConnectService(void)void le_cfg_GoToNode(le_cfg_IteratorRef_t iteratorRef, const char *newPath)void le_cfg_QuickDeleteNode(const char *path)void le_cfg_QuickSetString(const char *path, const char *value)void le_cfg_CommitTxn(le_cfg_IteratorRef_t iteratorRef)double le_cfg_GetFloat(le_cfg_IteratorRef_t iteratorRef, const char *path, double defaultValue)void le_cfg_DeleteNode(le_cfg_IteratorRef_t iteratorRef, const char *path)void le_cfg_QuickSetEmpty(const char *path)le_result_t le_cfg_TryConnectService(void)le_result_t le_cfg_QuickGetString(const char *path, char *value, size_t valueSize, const char *defaultValue)le_cfg_nodeType_t le_cfg_GetNodeType(le_cfg_IteratorRef_t iteratorRef, const char *path)void(* le_cfg_ChangeHandlerFunc_t)(void *contextPtr)Definition: le_cfg_interface.h:441bool le_cfg_NodeExists(le_cfg_IteratorRef_t iteratorRef, const char *path)le_cfg_IteratorRef_t le_cfg_CreateWriteTxn(const char *basePath)void le_cfg_SetServerDisconnectHandler(le_cfg_DisconnectHandler_t disconnectHandler, void *contextPtr)void le_cfg_SetInt(le_cfg_IteratorRef_t iteratorRef, const char *path, int32_t value)void le_cfg_CancelTxn(le_cfg_IteratorRef_t iteratorRef)bool le_cfg_IsEmpty(le_cfg_IteratorRef_t iteratorRef, const char *path)int32_t le_cfg_QuickGetInt(const char *path, int32_t defaultValue)le_result_t le_cfg_GoToFirstChild(le_cfg_IteratorRef_t iteratorRef)le_result_t le_cfg_GetNodeName(le_cfg_IteratorRef_t iteratorRef, const char *path, char *name, size_t nameSize)void le_cfg_SetEmpty(le_cfg_IteratorRef_t iteratorRef, const char *path)void le_cfg_QuickSetBool(const char *path, bool value)bool le_cfg_GetBool(le_cfg_IteratorRef_t iteratorRef, const char *path, bool defaultValue)le_result_t le_cfg_GetString(le_cfg_IteratorRef_t iteratorRef, const char *path, char *value, size_t valueSize, const char *defaultValue)void le_cfg_RemoveChangeHandler(le_cfg_ChangeHandlerRef_t handlerRef)le_result_t le_cfg_GoToParent(le_cfg_IteratorRef_t iteratorRef)Non-leaf node, this node is the parent of other nodes.Definition: le_cfg_interface.h:419