Soletta™ Framework
Framework for making IoT devices

Full online documentation | C API Index
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
sol-platform.h File Reference

These routines are used for Soletta platform interaction. More...

#include <stdlib.h>
#include "sol-vector.h"

Go to the source code of this file.

Macros

#define SOL_PLATFORM_TARGET_DEFAULT   "default"
 Default target string. More...
 
#define SOL_PLATFORM_TARGET_EMERGENCY   "emergency"
 Emergency target string. More...
 
#define SOL_PLATFORM_TARGET_POWER_OFF   "poweroff"
 Power-off target string. More...
 
#define SOL_PLATFORM_TARGET_REBOOT   "reboot"
 Reboot target string. More...
 
#define SOL_PLATFORM_TARGET_RESCUE   "rescue"
 Rescue target string. More...
 
#define SOL_PLATFORM_TARGET_SUSPEND   "suspend"
 Suspend target string. More...
 

Enumerations

enum  sol_platform_locale_category {
  SOL_PLATFORM_LOCALE_LANGUAGE, SOL_PLATFORM_LOCALE_ADDRESS, SOL_PLATFORM_LOCALE_COLLATE, SOL_PLATFORM_LOCALE_CTYPE,
  SOL_PLATFORM_LOCALE_IDENTIFICATION, SOL_PLATFORM_LOCALE_MEASUREMENT, SOL_PLATFORM_LOCALE_MESSAGES, SOL_PLATFORM_LOCALE_MONETARY,
  SOL_PLATFORM_LOCALE_NAME, SOL_PLATFORM_LOCALE_NUMERIC, SOL_PLATFORM_LOCALE_PAPER, SOL_PLATFORM_LOCALE_TELEPHONE,
  SOL_PLATFORM_LOCALE_TIME, SOL_PLATFORM_LOCALE_UNKNOWN = -1
}
 A locale category. More...
 
enum  sol_platform_service_state {
  SOL_PLATFORM_SERVICE_STATE_ACTIVE, SOL_PLATFORM_SERVICE_STATE_RELOADING, SOL_PLATFORM_SERVICE_STATE_INACTIVE, SOL_PLATFORM_SERVICE_STATE_FAILED,
  SOL_PLATFORM_SERVICE_STATE_ACTIVATING, SOL_PLATFORM_SERVICE_STATE_DEACTIVATING, SOL_PLATFORM_SERVICE_STATE_UNKNOWN = -1
}
 List of service states. More...
 
enum  sol_platform_state {
  SOL_PLATFORM_STATE_INITIALIZING, SOL_PLATFORM_STATE_RUNNING, SOL_PLATFORM_STATE_DEGRADED, SOL_PLATFORM_STATE_MAINTENANCE,
  SOL_PLATFORM_STATE_STOPPING, SOL_PLATFORM_STATE_UNKNOWN = -1
}
 List of platform states. More...
 

Functions

int sol_platform_add_hostname_monitor (void(*cb)(void *data, const char *hostname), const void *data)
 Adds a hostname monitor. More...
 
int sol_platform_add_locale_monitor (void(*cb)(void *data, enum sol_platform_locale_category category, const char *locale), const void *data)
 Add a locale monitor. More...
 
int sol_platform_add_service_monitor (void(*cb)(void *data, const char *service, enum sol_platform_service_state state), const char *service, const void *data)
 Adds a service monitor. More...
 
int sol_platform_add_state_monitor (void(*cb)(void *data, enum sol_platform_state state), const void *data)
 Adds a state monitor. More...
 
int sol_platform_add_system_clock_monitor (void(*cb)(void *data, int64_t timestamp), const void *data)
 Add a callback to monitor system clock changes. More...
 
int sol_platform_add_timezone_monitor (void(*cb)(void *data, const char *timezone), const void *data)
 Add a timezone monitor. More...
 
int sol_platform_apply_locale (enum sol_platform_locale_category category)
 Apply the locale category to the process. More...
 
int sol_platform_del_hostname_monitor (void(*cb)(void *data, const char *hostname), const void *data)
 Remove a hostname monitor. More...
 
int sol_platform_del_locale_monitor (void(*cb)(void *data, enum sol_platform_locale_category category, const char *locale), const void *data)
 Remove a locale monitor. More...
 
int sol_platform_del_service_monitor (void(*cb)(void *data, const char *service, enum sol_platform_service_state state), const char *service, const void *data)
 Removes a service monitor. More...
 
int sol_platform_del_state_monitor (void(*cb)(void *data, enum sol_platform_state state), const void *data)
 Removes a state monitor. More...
 
int sol_platform_del_system_clock_monitor (void(*cb)(void *data, int64_t timestamp), const void *data)
 Delete a register system_clock monitor. More...
 
int sol_platform_del_timezone_monitor (void(*cb)(void *data, const char *timezone), const void *data)
 Remove a timezone monitor. More...
 
struct sol_str_slice sol_platform_get_appname (void)
 Get current app name. More...
 
const char * sol_platform_get_board_name (void)
 Retrieves the name of the board on which Soletta is running. More...
 
const char * sol_platform_get_hostname (void)
 Gets the hostname. More...
 
const char * sol_platform_get_locale (enum sol_platform_locale_category category)
 Get the current locale of a given category. More...
 
const char * sol_platform_get_machine_id (void)
 Retrieves the machine-id present in the file system as a string. More...
 
const uint8_t * sol_platform_get_machine_id_as_bytes (void)
 Retrieves the machine-id present in the file system as a byte array. More...
 
int sol_platform_get_mount_points (struct sol_ptr_vector *vector)
 List mount points mounted by us on hotplug events. More...
 
const char * sol_platform_get_os_version (void)
 Retrieves the operating system's version that Soletta is running on top of. More...
 
const char * sol_platform_get_serial_number (void)
 Retrieves, in number, the platform's main board serial number/identifier. More...
 
enum sol_platform_service_state sol_platform_get_service_state (const char *service)
 Retrieves the state of a given service. More...
 
int sol_platform_get_state (void)
 Retrieves the current platform state. More...
 
const char * sol_platform_get_sw_version (void)
 Retrieves the version of Soletta that is running. More...
 
int64_t sol_platform_get_system_clock (void)
 Get the current system time. More...
 
const char * sol_platform_get_timezone (void)
 Get the current timezone. More...
 
int sol_platform_restart_service (const char *service)
 Restarts a given service. More...
 
int sol_platform_set_hostname (const char *name)
 Changes the hostname to name. More...
 
int sol_platform_set_locale (enum sol_platform_locale_category category, const char *locale)
 Set locale for a category. More...
 
int sol_platform_set_system_clock (int64_t timestamp)
 Set the system wide time. More...
 
int sol_platform_set_target (const char *target)
 Set the platform target. More...
 
int sol_platform_set_timezone (const char *tzone)
 Set the system timezone. More...
 
int sol_platform_start_service (const char *service)
 Starts a given service. More...
 
int sol_platform_stop_service (const char *service)
 Stops a given service. More...
 
int sol_platform_unmount (const char *mpoint, void(*cb)(void *data, const char *mpoint, int error), const void *data)
 Umount a mpoint. More...
 

Detailed Description

These routines are used for Soletta platform interaction.