anbox-platform-sdk
1.23.0
Anbox Platform SDK API documentation
|
#include <stdint.h>
#include <stddef.h>
#include <unistd.h>
#include <linux/limits.h>
#include <linux/input.h>
#include <EGL/egl.h>
Go to the source code of this file.
Classes | |
struct | AnboxDisplaySpec |
AnboxDisplaySpec describes properties of the virtual display Anbox creates for rendering. More... | |
struct | AnboxDisplaySpec2 |
AnboxDisplaySpec2 describes properties of the virtual display Anbox creates for rendering. More... | |
struct | AnboxAudioSpec |
The audio input/output format from anbox. More... | |
struct | AnboxBinderDevices |
The struct of binder devices that being used in Android container. More... | |
struct | AnboxGraphicsBuffer |
Graphics buffer. More... | |
struct | AnboxGraphicsBuffer2 |
Graphics buffer. More... | |
struct | AnboxCallback |
Generic callback wrapper. More... | |
struct | AnboxDirectGraphicsConfiguration |
AnboxDirectGraphicsConfiguration defines how Anbox should configure the graphics implementation inside the Android container. More... | |
struct | AnboxPlatformConfigurationItemInfo |
struct | AnboxPlatformConfigurationInfo |
struct | AnboxAndroidSystemProperties |
AnboxAndroidSystemProperties describes the Android system properties provided by a platform to be forwarded to the Android container. More... | |
struct | AnboxPlatformConfiguration |
AnboxPlatformConfiguration holds platform configuration options which Anbox supplies to the platform implementation at initialization time. More... | |
struct | AnboxPlatformDescriptor |
AnboxPlatformDescriptor provides information about the implemented platform. More... | |
struct | AnboxCameraSpec |
AnboxCameraSpec represents the camera specification. More... | |
struct | AnboxVideoFrame |
AnboxVideoFrame represents a single complete video frame. More... | |
struct | GnssMeasurement |
struct | GnssClock |
struct | AnboxGGAData |
struct | AnboxRMCData |
struct | AnboxGnssData |
struct | AnboxGpsData |
struct | AnboxGraphicsConfiguration |
AnboxDisplaySpec describes properties of the Anbox rendering pipeline the platform plugin can influence. More... | |
struct | AnboxInputEvent |
AnboxInputEvent is similar to the input_event that is defined in the Linux kernel API. The three member variables type, code and value have the same meaning as defined in the Linux kernel API. Please see https://www.kernel.org/doc/Documentation/input/input.txt for further information. More... | |
struct | AnboxSensorVector |
AnboxSensorVector represents acceleration along each device axis or current device rotation angles: azimuth, pitch, roll. More... | |
struct | AnboxSensorData |
AnboxSensorData represents the sensor data stucture,. More... | |
struct | AnboxVhalPropertyValue |
AnboxVhalPropertyValue describes the current value of a VHAL property, as returned by a get call to the Android VHAL. More... | |
struct | AnboxVhalAreaConfig |
AnboxVhalAreaConfig describes the configuration of a given area id for a VHAL property. More... | |
struct | AnboxVhalPropertyConfig |
AnboxVhalPropertyConfig describes the configuration of a VHAL property. More... | |
struct | AnboxVhalAnswerGetConfigs |
AnboxVhalAnswerGet contains the answer for a GetAllPropConfigs or GetPropConfigs request sent to the Android VHAL. More... | |
struct | AnboxVhalCommandGet |
AnboxVhalCommandGet describes a get request to send to the Android VHAL. More... | |
struct | AnboxVhalCommandSet |
AnboxVhalCommandSet describes a set request to send to the Android VHAL. More... | |
struct | AnboxVideoDecoderConfig |
AnboxVideoDecoderConfig describes the configuration of a video decoder. More... | |
struct | AnboxVideoImage |
AnboxVideoImage describes a decoded image returned by the video decoder. More... | |
Macros | |
#define | MAX_NAME_LENGTH 100 |
#define | MAX_STRING_LENGTH 256 |
#define | MAX_VHAL_AREA_NAME_LENGTH 32 |
#define | ANBOX_PLATFORM_DESCRIPTOR_SECTION ".anbox_platform_descriptor_section" |
A particular elf section that Anbox needs various information from the platform plugin to appear in. More... | |
#define | ANBOX_GRAPHICS_BUFFER_MAX_PLANES 4 |
#define | GNSS_MAX_MEASUREMENT 64 |
#define | MAX_SENSOR_DATA_LENGTH 16 |
#define | MAX_VECTOR_DATA_LENGTH 3 |
Typedefs | |
typedef uintptr_t | AnboxNativeHandle |
Opaque handle. More... | |
typedef int64_t | GpsUtcTime |
typedef const unsigned char *(* | AnboxTracerGetCategoryEnabledFunc) (const char *name) |
Method prototype which will be used to determine if the given tracing category is enabled for tracing inside the Anbox runtime. More... | |
typedef void(* | AnboxTracerAddEventFunc) (char phase, const unsigned char *category, const char *name, unsigned long long id, int num_args, const char **arg_names, const unsigned char *arg_types, const unsigned long long *arg_values, unsigned char flags) |
Method prototype which will be used by the platform to submit trace events to the tracing implementation inside the Anbox runtime. More... | |
#define ANBOX_GRAPHICS_BUFFER_MAX_PLANES 4 |
#define ANBOX_PLATFORM_DESCRIPTOR_SECTION ".anbox_platform_descriptor_section" |
typedef uintptr_t AnboxNativeHandle |
typedef void(* AnboxTracerAddEventFunc) (char phase, const unsigned char *category, const char *name, unsigned long long id, int num_args, const char **arg_names, const unsigned char *arg_types, const unsigned long long *arg_values, unsigned char flags) |
Method prototype which will be used by the platform to submit trace events to the tracing implementation inside the Anbox runtime.
phase | Phase of the trace event (see AnboxTraceEventPhase) |
category | Pointer to a statically allocated string naming the category the event belongs to |
name | Name of the trace event |
id | Unique id of the trace event |
num_args | Number of arguments the trace event has |
arg_names | Array of length num_args containing the argument names |
arg_types | Array of length num_args containing the argument types |
arg_values | Array of length num_args containing the argument values |
flags | Flags passed with the trace event, currently unused |
typedef const unsigned char*(* AnboxTracerGetCategoryEnabledFunc) (const char *name) |
typedef int64_t GpsUtcTime |
enum AnboxAudioFormat |
Audio format is a 32-bit word that consists of: main format field (upper 8 bits) sub format field (lower 24 bits).
The main format indicates the main codec type. The sub format field indicates options and parameters for each format. The sub format is mainly used for instance to indicate the requested bitrate or profile. It can also be used for certain formats to give informations not present in the encoded audio stream (e.g. octet alignement for AMR).
Audio pcm sub formats.
All of these are in native byte order.
enum AnboxAudioStreamType |
enum AnboxEventType |
enum AnboxGpsDataType : uint32_t |
AnboxGpsDataType describes all gps data types supported by Anbox.
Pixel format used for the pixels stored in a AnboxGraphicsBuffer or AnboxGraphicsBuffer2.
Usage flags for graphics buffers
enum AnboxGraphicsImplementationType : uint8_t |
enum AnboxInputDeviceType |
AnboxPlatformConfigurationKey specifies configuration items which allow to influence the behavior and configuration of Anbox.
Enumerator | |
---|---|
EGL_DRIVER_PATH | Path to the platform implementation of the EGL shared library. Providing a valid path is mandatory. The value of this configuration item is of type |
OPENGL_ES1_CM_DRIVER_PATH | Path to the platform implementation of the OpenGL ES 1.x CM shared library. Providing a valid path is mandatory. The value of this configuration item is of type |
OPENGL_ES2_DRIVER_PATH | Path to the platform implementation of the OpenGL ES 2.x shared library. Providing a valid path is mandatory. The value of this configuration item is of type |
DISPLAY_SPEC | Specification of parameters of the virtual display Anbox creates. Internally Anbox will setup a virtual display for Android to render onto. The specification provided with this configuration item details the dimension, density and other relevant parameters of the the created virtual display. The value of this configuration item is of type
|
AUDIO_SPEC | Specification of parameters of the audio output Anbox creates. Internally Anbox will setup audio server for Android to connect to. The specification provided with this configuration item details the audio format, channel, sample rate and other relevant parameters of the created audio server. The value of this configuration item is of type |
DISPLAY_SPEC2 | Specification of parameters of the virtual display Anbox creates. Internally Anbox will setup a virtual display for Android to render onto. The specification provided with this configuration item details the dimension, density and other relevant parameters of the the created virtual display. The value of this configuration item is of type |
AUDIO_INPUT_SPEC | Specification of parameters of the audio input Anbox creates. Internally Anbox will setup audio server for Android to connect to. The specification provided with this configuration item details the audio format, channel, sample rate and other relevant parameters of the created audio server. The value of this configuration item is of type |
BINDER_DEVICES | Structure of path to binder devices used by the Android container. This is used by Anbox to notify the platform that all binder devices are available by calling
The value of this configuration item is of type |
SUPPORTED_VIDEO_DECODE_CODECS | |
GRAPHICS_IMPLEMENTATION_TYPE | |
DIRECT_GRAPHICS_CONFIGURATION | |
PLATFORM_CONFIGURATION_INFO | |
CONTAINER_BASE_UID | |
VULKAN_ICD_PATH | |
DRM_RENDER_NODE_PATH | |
ENABLE_SW_SYNC_SUPPORT | |
ANDROID_SYSTEM_PROPERTIES | |
PLATFORM_CONFIGURATION_ID_START | |
PLATFORM_CONFIGURATION_ID_END |
enum AnboxSensorType : uint32_t |
AnboxSensorType describes all sensor types supported by Anbox.
enum AnboxTraceEventPhase |
AnboxVhalPropertyAccess describes if the property is read, write, or both.
Matches the VehiclePropertyAccess enum of the Android VHAL interface.
Enumerator | |
---|---|
ANBOX_VHAL_PROPERTY_ACCESS_NONE | |
ANBOX_VHAL_PROPERTY_ACCESS_READ | |
ANBOX_VHAL_PROPERTY_ACCESS_WRITE | |
ANBOX_VHAL_PROPERTY_ACCESS_READ_WRITE |
AnboxVhalPropertyChangeMode describes how the property changes.
Matches the VehiclePropertyChangeMode enum of the Android VHAL interface.
Enumerator | |
---|---|
ANBOX_VHAL_PROPERTY_CHANGE_MODE_STATIC | |
ANBOX_VHAL_PROPERTY_CHANGE_MODE_ON_CHANGE | |
ANBOX_VHAL_PROPERTY_CHANGE_MODE_CONTINUOUS |
AnboxVhalPropertyStatus describes the status of a VHAL property.
Matches the VehiclePropertyStatus enum of the Android VHAL interface.
Enumerator | |
---|---|
ANBOX_VHAL_PROPERTY_STATUS_AVAILABLE | |
ANBOX_VHAL_PROPERTY_STATUS_UNAVAILABLE | |
ANBOX_VHAL_PROPERTY_STATUS_ERROR |
AnboxVhalPropertyType describes the type of the value stored by a VHAL property.
Matches the VehiclePropertyType enum of the Android VHAL interface.
enum AnboxVideoCodecType : uint8_t |
enum AnboxVideoPixelFormat : uint8_t |
enum GnssClockFlags : uint16_t |
Flags to indicate what fields in GnssClock are valid.
enum GnssConstellationType : uint8_t |
enum GnssMeasurementState : uint32_t |
Flags indicating the GNSS measurement state.
The expected behavior here is for GPS HAL to set all the flags that applies. For example, if the state for a satellite is only C/A code locked and bit synchronized, and there is still millisecond ambiguity, the state should be set as:
GNSS_MEASUREMENT_STATE_CODE_LOCK | GNSS_MEASUREMENT_STATE_BIT_SYNC | GNSS_MEASUREMENT_STATE_MSEC_AMBIGUOUS
If GNSS is still searching for a satellite, the corresponding state should be set to GNSS_MEASUREMENT_STATE_UNKNOWN(0).