You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					48 lines
				
				1.4 KiB
			
		
		
			
		
	
	
					48 lines
				
				1.4 KiB
			| 
											6 years ago
										 | #ifndef _SELFDRIVE_COMMON_PARAMS_H_
 | ||
|  | #define _SELFDRIVE_COMMON_PARAMS_H_
 | ||
|  | 
 | ||
|  | #include <stddef.h>
 | ||
|  | 
 | ||
|  | #ifdef __cplusplus
 | ||
|  | extern "C" {
 | ||
|  | #endif
 | ||
|  | 
 | ||
|  | #define ERR_NO_VALUE -33
 | ||
|  | 
 | ||
|  | int write_db_value(const char* params_path, const char* key, const char* value,
 | ||
|  |                    size_t value_size);
 | ||
|  | 
 | ||
|  | // Reads a value from the params database.
 | ||
|  | // Inputs:
 | ||
|  | //  params_path: The path of the database, or NULL to use the default.
 | ||
|  | //  key: The key to read.
 | ||
|  | //  value: A pointer where a newly allocated string containing the db value will
 | ||
|  | //         be written.
 | ||
|  | //  value_sz: A pointer where the size of value will be written. Does not
 | ||
|  | //            include the NULL terminator.
 | ||
|  | //
 | ||
|  | // Returns: Negative on failure, otherwise 0.
 | ||
|  | int read_db_value(const char* params_path, const char* key, char** value,
 | ||
|  |                   size_t* value_sz);
 | ||
|  | 
 | ||
|  | // Delete a value from the params database.
 | ||
|  | // Inputs are the same as read_db_value, without value and value_sz.
 | ||
|  | int delete_db_value(const char* params_path, const char* key);
 | ||
|  | 
 | ||
|  | // Reads a value from the params database, blocking until successful.
 | ||
|  | // Inputs are the same as read_db_value.
 | ||
|  | void read_db_value_blocking(const char* params_path, const char* key,
 | ||
|  |                             char** value, size_t* value_sz);
 | ||
|  | 
 | ||
|  | #ifdef __cplusplus
 | ||
|  | }  // extern "C"
 | ||
|  | #endif
 | ||
|  | 
 | ||
|  | #ifdef __cplusplus
 | ||
|  | #include <map>
 | ||
|  | #include <string>
 | ||
|  | int read_db_all(const char* params_path, std::map<std::string, std::string> *params);
 | ||
|  | #endif
 | ||
|  | 
 | ||
|  | #endif  // _SELFDRIVE_COMMON_PARAMS_H_
 |