blob: 5bf7f7141d8daddd1b2a2dc493b2cb3e8e3eb627 [file] [log] [blame]
#ifndef HIDL_GENERATED_ANDROID_HARDWARE_AUDIO_COMMON_V4_0_TYPES_H
#define HIDL_GENERATED_ANDROID_HARDWARE_AUDIO_COMMON_V4_0_TYPES_H
#include <hidl/HidlSupport.h>
#include <hidl/MQDescriptor.h>
#include <utils/NativeHandle.h>
#include <utils/misc.h>
namespace android {
namespace hardware {
namespace audio {
namespace common {
namespace V4_0 {
// Forward declaration for forward reference support:
enum class AudioHandleConsts : int32_t;
struct Uuid;
enum class AudioStreamType : int32_t;
enum class AudioSource : int32_t;
enum class AudioSessionConsts : int32_t;
enum class AudioFormat : uint32_t;
enum class FixedChannelCount : int32_t;
enum class AudioChannelMask : uint32_t;
enum class AudioMode : int32_t;
enum class AudioDevice : uint32_t;
enum class AudioOutputFlag : int32_t;
enum class AudioInputFlag : int32_t;
enum class AudioUsage : int32_t;
enum class AudioContentType : uint32_t;
struct AudioOffloadInfo;
struct AudioConfig;
enum class AudioGainMode : uint32_t;
struct AudioGain;
struct AudioGainConfig;
enum class AudioPortRole : int32_t;
enum class AudioPortType : int32_t;
struct AudioPortConfigDeviceExt;
struct AudioPortConfigSessionExt;
enum class AudioPortConfigMask : uint32_t;
struct AudioPortConfig;
struct AudioPortDeviceExt;
enum class AudioMixLatencyClass : int32_t;
struct AudioPortMixExt;
struct AudioPortSessionExt;
struct AudioPort;
struct ThreadInfo;
/*
* IDs and Handles
*
*
*
* Handle type for identifying audio sources and sinks.
*/
typedef int32_t AudioIoHandle;
/**
* Audio hw module handle functions or structures referencing a module.
*/
typedef int32_t AudioModuleHandle;
/**
* Each port has a unique ID or handle allocated by policy manager.
*/
typedef int32_t AudioPortHandle;
/**
* Each patch is identified by a handle at the interface used to create that
* patch. For instance, when a patch is created by the audio HAL, the HAL
* allocates and returns a handle. This handle is unique to a given audio HAL
* hardware module. But the same patch receives another system wide unique
* handle allocated by the framework. This unique handle is used for all
* transactions inside the framework.
*/
typedef int32_t AudioPatchHandle;
/**
* A HW synchronization source returned by the audio HAL.
*/
typedef uint32_t AudioHwSync;
/**
* Each port has a unique ID or handle allocated by policy manager.
*/
enum class AudioHandleConsts : int32_t {
AUDIO_IO_HANDLE_NONE = 0,
AUDIO_MODULE_HANDLE_NONE = 0,
AUDIO_PORT_HANDLE_NONE = 0,
AUDIO_PATCH_HANDLE_NONE = 0,
};
/**
* Commonly used structure for passing unique identifieds (UUID).
* For the definition of UUID, refer to ITU-T X.667 spec.
*/
struct Uuid final {
uint32_t timeLow __attribute__ ((aligned(4)));
uint16_t timeMid __attribute__ ((aligned(2)));
uint16_t versionAndTimeHigh __attribute__ ((aligned(2)));
uint16_t variantAndClockSeqHigh __attribute__ ((aligned(2)));
::android::hardware::hidl_array<uint8_t, 6> node __attribute__ ((aligned(1)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::Uuid, timeLow) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::Uuid, timeMid) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::Uuid, versionAndTimeHigh) == 6, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::Uuid, variantAndClockSeqHigh) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::Uuid, node) == 10, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::Uuid) == 16, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::Uuid) == 4, "wrong alignment");
/*
* Audio streams
*
*
*
* Audio stream type describing the intended use case of a stream.
*/
enum class AudioStreamType : int32_t {
DEFAULT = -1 /* -1 */,
MIN = 0,
VOICE_CALL = 0,
SYSTEM = 1,
RING = 2,
MUSIC = 3,
ALARM = 4,
NOTIFICATION = 5,
BLUETOOTH_SCO = 6,
ENFORCED_AUDIBLE = 7,
DTMF = 8,
TTS = 9,
ACCESSIBILITY = 10,
};
enum class AudioSource : int32_t {
DEFAULT = 0,
MIC = 1,
VOICE_UPLINK = 2,
VOICE_DOWNLINK = 3,
VOICE_CALL = 4,
CAMCORDER = 5,
VOICE_RECOGNITION = 6,
VOICE_COMMUNICATION = 7,
/**
* Source for the mix to be presented remotely. An example of remote
* presentation is Wifi Display where a dongle attached to a TV can be used
* to play the mix captured by this audio source.
*/
REMOTE_SUBMIX = 8,
/**
* Source for unprocessed sound. Usage examples include level measurement
* and raw signal analysis.
*/
UNPROCESSED = 9,
FM_TUNER = 1998,
};
typedef int32_t AudioSession;
/**
* Special audio session values.
*/
enum class AudioSessionConsts : int32_t {
/**
* Session for effects attached to a particular output stream
* (value must be less than 0)
*/
OUTPUT_STAGE = -1 /* -1 */,
/**
* Session for effects applied to output mix. These effects can
* be moved by audio policy manager to another output stream
* (value must be 0)
*/
OUTPUT_MIX = 0,
/**
* Application does not specify an explicit session ID to be used, and
* requests a new session ID to be allocated. Corresponds to
* AudioManager.AUDIO_SESSION_ID_GENERATE and
* AudioSystem.AUDIO_SESSION_ALLOCATE.
*/
ALLOCATE = 0,
/**
* For use with AudioRecord::start(), this indicates no trigger session.
* It is also used with output tracks and patch tracks, which never have a
* session.
*/
NONE = 0,
};
/**
* 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
* record to indicate for instance 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).
*/
enum class AudioFormat : uint32_t {
INVALID = 4294967295u /* 0xFFFFFFFFUL */,
DEFAULT = 0u,
PCM = 0u /* 0x00000000UL */,
MP3 = 16777216u /* 0x01000000UL */,
AMR_NB = 33554432u /* 0x02000000UL */,
AMR_WB = 50331648u /* 0x03000000UL */,
AAC = 67108864u /* 0x04000000UL */,
/**
* Deprecated, Use AAC_HE_V1
*/
HE_AAC_V1 = 83886080u /* 0x05000000UL */,
/**
* Deprecated, Use AAC_HE_V2
*/
HE_AAC_V2 = 100663296u /* 0x06000000UL */,
VORBIS = 117440512u /* 0x07000000UL */,
OPUS = 134217728u /* 0x08000000UL */,
AC3 = 150994944u /* 0x09000000UL */,
E_AC3 = 167772160u /* 0x0A000000UL */,
DTS = 184549376u /* 0x0B000000UL */,
DTS_HD = 201326592u /* 0x0C000000UL */,
/**
* IEC61937 is encoded audio wrapped in 16-bit PCM.
*/
IEC61937 = 218103808u /* 0x0D000000UL */,
DOLBY_TRUEHD = 234881024u /* 0x0E000000UL */,
EVRC = 268435456u /* 0x10000000UL */,
EVRCB = 285212672u /* 0x11000000UL */,
EVRCWB = 301989888u /* 0x12000000UL */,
EVRCNW = 318767104u /* 0x13000000UL */,
AAC_ADIF = 335544320u /* 0x14000000UL */,
WMA = 352321536u /* 0x15000000UL */,
WMA_PRO = 369098752u /* 0x16000000UL */,
AMR_WB_PLUS = 385875968u /* 0x17000000UL */,
MP2 = 402653184u /* 0x18000000UL */,
QCELP = 419430400u /* 0x19000000UL */,
DSD = 436207616u /* 0x1A000000UL */,
FLAC = 452984832u /* 0x1B000000UL */,
ALAC = 469762048u /* 0x1C000000UL */,
APE = 486539264u /* 0x1D000000UL */,
AAC_ADTS = 503316480u /* 0x1E000000UL */,
SBC = 520093696u /* 0x1F000000UL */,
APTX = 536870912u /* 0x20000000UL */,
APTX_HD = 553648128u /* 0x21000000UL */,
AC4 = 570425344u /* 0x22000000UL */,
LDAC = 587202560u /* 0x23000000UL */,
/**
* Dolby Metadata-enhanced Audio Transmission
*/
MAT = 603979776u /* 0x24000000UL */,
/**
* Deprecated
*/
MAIN_MASK = 4278190080u /* 0xFF000000UL */,
SUB_MASK = 16777215u /* 0x00FFFFFFUL */,
/*
* Subformats
*/
PCM_SUB_16_BIT = 1u /* 0x1 */,
PCM_SUB_8_BIT = 2u /* 0x2 */,
PCM_SUB_32_BIT = 3u /* 0x3 */,
PCM_SUB_8_24_BIT = 4u /* 0x4 */,
PCM_SUB_FLOAT = 5u /* 0x5 */,
PCM_SUB_24_BIT_PACKED = 6u /* 0x6 */,
MP3_SUB_NONE = 0u /* 0x0 */,
AMR_SUB_NONE = 0u /* 0x0 */,
AAC_SUB_MAIN = 1u /* 0x1 */,
AAC_SUB_LC = 2u /* 0x2 */,
AAC_SUB_SSR = 4u /* 0x4 */,
AAC_SUB_LTP = 8u /* 0x8 */,
AAC_SUB_HE_V1 = 16u /* 0x10 */,
AAC_SUB_SCALABLE = 32u /* 0x20 */,
AAC_SUB_ERLC = 64u /* 0x40 */,
AAC_SUB_LD = 128u /* 0x80 */,
AAC_SUB_HE_V2 = 256u /* 0x100 */,
AAC_SUB_ELD = 512u /* 0x200 */,
AAC_SUB_XHE = 768u /* 0x300 */,
VORBIS_SUB_NONE = 0u /* 0x0 */,
E_AC3_SUB_JOC = 1u /* 0x1 */,
MAT_SUB_1_0 = 1u /* 0x1 */,
MAT_SUB_2_0 = 2u /* 0x2 */,
MAT_SUB_2_1 = 3u /* 0x3 */,
/*
* Aliases
*
*
* note != AudioFormat.ENCODING_PCM_16BIT
*/
PCM_16_BIT = 1u /* (PCM | PCM_SUB_16_BIT) */,
/**
* note != AudioFormat.ENCODING_PCM_8BIT
*/
PCM_8_BIT = 2u /* (PCM | PCM_SUB_8_BIT) */,
PCM_32_BIT = 3u /* (PCM | PCM_SUB_32_BIT) */,
PCM_8_24_BIT = 4u /* (PCM | PCM_SUB_8_24_BIT) */,
PCM_FLOAT = 5u /* (PCM | PCM_SUB_FLOAT) */,
PCM_24_BIT_PACKED = 6u /* (PCM | PCM_SUB_24_BIT_PACKED) */,
AAC_MAIN = 67108865u /* (AAC | AAC_SUB_MAIN) */,
AAC_LC = 67108866u /* (AAC | AAC_SUB_LC) */,
AAC_SSR = 67108868u /* (AAC | AAC_SUB_SSR) */,
AAC_LTP = 67108872u /* (AAC | AAC_SUB_LTP) */,
AAC_HE_V1 = 67108880u /* (AAC | AAC_SUB_HE_V1) */,
AAC_SCALABLE = 67108896u /* (AAC | AAC_SUB_SCALABLE) */,
AAC_ERLC = 67108928u /* (AAC | AAC_SUB_ERLC) */,
AAC_LD = 67108992u /* (AAC | AAC_SUB_LD) */,
AAC_HE_V2 = 67109120u /* (AAC | AAC_SUB_HE_V2) */,
AAC_ELD = 67109376u /* (AAC | AAC_SUB_ELD) */,
AAC_XHE = 67109632u /* (AAC | AAC_SUB_XHE) */,
AAC_ADTS_MAIN = 503316481u /* (AAC_ADTS | AAC_SUB_MAIN) */,
AAC_ADTS_LC = 503316482u /* (AAC_ADTS | AAC_SUB_LC) */,
AAC_ADTS_SSR = 503316484u /* (AAC_ADTS | AAC_SUB_SSR) */,
AAC_ADTS_LTP = 503316488u /* (AAC_ADTS | AAC_SUB_LTP) */,
AAC_ADTS_HE_V1 = 503316496u /* (AAC_ADTS | AAC_SUB_HE_V1) */,
AAC_ADTS_SCALABLE = 503316512u /* (AAC_ADTS | AAC_SUB_SCALABLE) */,
AAC_ADTS_ERLC = 503316544u /* (AAC_ADTS | AAC_SUB_ERLC) */,
AAC_ADTS_LD = 503316608u /* (AAC_ADTS | AAC_SUB_LD) */,
AAC_ADTS_HE_V2 = 503316736u /* (AAC_ADTS | AAC_SUB_HE_V2) */,
AAC_ADTS_ELD = 503316992u /* (AAC_ADTS | AAC_SUB_ELD) */,
AAC_ADTS_XHE = 503317248u /* (AAC_ADTS | AAC_SUB_XHE) */,
E_AC3_JOC = 167772161u /* (E_AC3 | E_AC3_SUB_JOC) */,
MAT_1_0 = 603979777u /* (MAT | MAT_SUB_1_0) */,
MAT_2_0 = 603979778u /* (MAT | MAT_SUB_2_0) */,
MAT_2_1 = 603979779u /* (MAT | MAT_SUB_2_1) */,
};
/**
* Usage of these values highlights places in the code that use 2- or 8- channel
* assumptions.
*/
enum class FixedChannelCount : int32_t {
FCC_2 = 2,
FCC_8 = 8,
};
/**
* A channel mask per se only defines the presence or absence of a channel, not
* the order. See AUDIO_INTERLEAVE_* for the platform convention of order.
*
* AudioChannelMask is an opaque type and its internal layout should not be
* assumed as it may change in the future. Instead, always use functions
* to examine it.
*
* These are the current representations:
*
* REPRESENTATION_POSITION
* is a channel mask representation for position assignment. Each low-order
* bit corresponds to the spatial position of a transducer (output), or
* interpretation of channel (input). The user of a channel mask needs to
* know the context of whether it is for output or input. The constants
* OUT_* or IN_* apply to the bits portion. It is not permitted for no bits
* to be set.
*
* REPRESENTATION_INDEX
* is a channel mask representation for index assignment. Each low-order
* bit corresponds to a selected channel. There is no platform
* interpretation of the various bits. There is no concept of output or
* input. It is not permitted for no bits to be set.
*
* All other representations are reserved for future use.
*
* Warning: current representation distinguishes between input and output, but
* this will not the be case in future revisions of the platform. Wherever there
* is an ambiguity between input and output that is currently resolved by
* checking the channel mask, the implementer should look for ways to fix it
* with additional information outside of the mask.
*/
enum class AudioChannelMask : uint32_t {
/**
* must be 0 for compatibility
*/
REPRESENTATION_POSITION = 0u,
/**
* 1 is reserved for future use
*/
REPRESENTATION_INDEX = 2u,
/*
* 3 is reserved for future use
*
*
* These can be a complete value of AudioChannelMask
*/
NONE = 0u /* 0x0 */,
INVALID = 3221225472u /* 0xC0000000 */,
/*
* These can be the bits portion of an AudioChannelMask
* with representation REPRESENTATION_POSITION.
*
*
* output channels
*/
OUT_FRONT_LEFT = 1u /* 0x1 */,
OUT_FRONT_RIGHT = 2u /* 0x2 */,
OUT_FRONT_CENTER = 4u /* 0x4 */,
OUT_LOW_FREQUENCY = 8u /* 0x8 */,
OUT_BACK_LEFT = 16u /* 0x10 */,
OUT_BACK_RIGHT = 32u /* 0x20 */,
OUT_FRONT_LEFT_OF_CENTER = 64u /* 0x40 */,
OUT_FRONT_RIGHT_OF_CENTER = 128u /* 0x80 */,
OUT_BACK_CENTER = 256u /* 0x100 */,
OUT_SIDE_LEFT = 512u /* 0x200 */,
OUT_SIDE_RIGHT = 1024u /* 0x400 */,
OUT_TOP_CENTER = 2048u /* 0x800 */,
OUT_TOP_FRONT_LEFT = 4096u /* 0x1000 */,
OUT_TOP_FRONT_CENTER = 8192u /* 0x2000 */,
OUT_TOP_FRONT_RIGHT = 16384u /* 0x4000 */,
OUT_TOP_BACK_LEFT = 32768u /* 0x8000 */,
OUT_TOP_BACK_CENTER = 65536u /* 0x10000 */,
OUT_TOP_BACK_RIGHT = 131072u /* 0x20000 */,
OUT_TOP_SIDE_LEFT = 262144u /* 0x40000 */,
OUT_TOP_SIDE_RIGHT = 524288u /* 0x80000 */,
OUT_MONO = 1u /* OUT_FRONT_LEFT */,
OUT_STEREO = 3u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT) */,
OUT_2POINT1 = 11u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_LOW_FREQUENCY) */,
OUT_2POINT0POINT2 = 786435u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_TOP_SIDE_LEFT | OUT_TOP_SIDE_RIGHT) */,
OUT_2POINT1POINT2 = 786443u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_TOP_SIDE_LEFT | OUT_TOP_SIDE_RIGHT | OUT_LOW_FREQUENCY) */,
OUT_3POINT0POINT2 = 786439u /* (OUT_FRONT_LEFT | OUT_FRONT_CENTER | OUT_FRONT_RIGHT | OUT_TOP_SIDE_LEFT | OUT_TOP_SIDE_RIGHT) */,
OUT_3POINT1POINT2 = 786447u /* (OUT_FRONT_LEFT | OUT_FRONT_CENTER | OUT_FRONT_RIGHT | OUT_TOP_SIDE_LEFT | OUT_TOP_SIDE_RIGHT | OUT_LOW_FREQUENCY) */,
OUT_QUAD = 51u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_BACK_LEFT | OUT_BACK_RIGHT) */,
OUT_QUAD_BACK = 51u /* OUT_QUAD */,
/**
* like OUT_QUAD_BACK with *_SIDE_* instead of *_BACK_*
*/
OUT_QUAD_SIDE = 1539u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_SIDE_LEFT | OUT_SIDE_RIGHT) */,
OUT_SURROUND = 263u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_FRONT_CENTER | OUT_BACK_CENTER) */,
OUT_PENTA = 55u /* (OUT_QUAD | OUT_FRONT_CENTER) */,
OUT_5POINT1 = 63u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_FRONT_CENTER | OUT_LOW_FREQUENCY | OUT_BACK_LEFT | OUT_BACK_RIGHT) */,
OUT_5POINT1_BACK = 63u /* OUT_5POINT1 */,
/**
* like OUT_5POINT1_BACK with *_SIDE_* instead of *_BACK_*
*/
OUT_5POINT1_SIDE = 1551u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_FRONT_CENTER | OUT_LOW_FREQUENCY | OUT_SIDE_LEFT | OUT_SIDE_RIGHT) */,
OUT_5POINT1POINT2 = 786495u /* (OUT_5POINT1 | OUT_TOP_SIDE_LEFT | OUT_TOP_SIDE_RIGHT) */,
OUT_5POINT1POINT4 = 184383u /* (OUT_5POINT1 | OUT_TOP_FRONT_LEFT | OUT_TOP_FRONT_RIGHT | OUT_TOP_BACK_LEFT | OUT_TOP_BACK_RIGHT) */,
OUT_6POINT1 = 319u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_FRONT_CENTER | OUT_LOW_FREQUENCY | OUT_BACK_LEFT | OUT_BACK_RIGHT | OUT_BACK_CENTER) */,
/**
* matches the correct AudioFormat.CHANNEL_OUT_7POINT1_SURROUND
*/
OUT_7POINT1 = 1599u /* (OUT_FRONT_LEFT | OUT_FRONT_RIGHT | OUT_FRONT_CENTER | OUT_LOW_FREQUENCY | OUT_BACK_LEFT | OUT_BACK_RIGHT | OUT_SIDE_LEFT | OUT_SIDE_RIGHT) */,
OUT_7POINT1POINT2 = 788031u /* (OUT_7POINT1 | OUT_TOP_SIDE_LEFT | OUT_TOP_SIDE_RIGHT) */,
OUT_7POINT1POINT4 = 185919u /* (OUT_7POINT1 | OUT_TOP_FRONT_LEFT | OUT_TOP_FRONT_RIGHT | OUT_TOP_BACK_LEFT | OUT_TOP_BACK_RIGHT) */,
/*
* These are bits only, not complete values
*
*
* input channels
*/
IN_LEFT = 4u /* 0x4 */,
IN_RIGHT = 8u /* 0x8 */,
IN_FRONT = 16u /* 0x10 */,
IN_BACK = 32u /* 0x20 */,
IN_LEFT_PROCESSED = 64u /* 0x40 */,
IN_RIGHT_PROCESSED = 128u /* 0x80 */,
IN_FRONT_PROCESSED = 256u /* 0x100 */,
IN_BACK_PROCESSED = 512u /* 0x200 */,
IN_PRESSURE = 1024u /* 0x400 */,
IN_X_AXIS = 2048u /* 0x800 */,
IN_Y_AXIS = 4096u /* 0x1000 */,
IN_Z_AXIS = 8192u /* 0x2000 */,
IN_BACK_LEFT = 65536u /* 0x10000 */,
IN_BACK_RIGHT = 131072u /* 0x20000 */,
IN_CENTER = 262144u /* 0x40000 */,
IN_LOW_FREQUENCY = 1048576u /* 0x100000 */,
IN_TOP_LEFT = 2097152u /* 0x200000 */,
IN_TOP_RIGHT = 4194304u /* 0x400000 */,
IN_VOICE_UPLINK = 16384u /* 0x4000 */,
IN_VOICE_DNLINK = 32768u /* 0x8000 */,
IN_MONO = 16u /* IN_FRONT */,
IN_STEREO = 12u /* (IN_LEFT | IN_RIGHT) */,
IN_FRONT_BACK = 48u /* (IN_FRONT | IN_BACK) */,
IN_6 = 252u /* (IN_LEFT | IN_RIGHT | IN_FRONT | IN_BACK | IN_LEFT_PROCESSED | IN_RIGHT_PROCESSED) */,
IN_2POINT0POINT2 = 6291468u /* (IN_LEFT | IN_RIGHT | IN_TOP_LEFT | IN_TOP_RIGHT) */,
IN_2POINT1POINT2 = 7340044u /* (IN_LEFT | IN_RIGHT | IN_TOP_LEFT | IN_TOP_RIGHT | IN_LOW_FREQUENCY) */,
IN_3POINT0POINT2 = 6553612u /* (IN_LEFT | IN_CENTER | IN_RIGHT | IN_TOP_LEFT | IN_TOP_RIGHT) */,
IN_3POINT1POINT2 = 7602188u /* (IN_LEFT | IN_CENTER | IN_RIGHT | IN_TOP_LEFT | IN_TOP_RIGHT | IN_LOW_FREQUENCY) */,
IN_5POINT1 = 1507340u /* (IN_LEFT | IN_CENTER | IN_RIGHT | IN_BACK_LEFT | IN_BACK_RIGHT | IN_LOW_FREQUENCY) */,
IN_VOICE_UPLINK_MONO = 16400u /* (IN_VOICE_UPLINK | IN_MONO) */,
IN_VOICE_DNLINK_MONO = 32784u /* (IN_VOICE_DNLINK | IN_MONO) */,
IN_VOICE_CALL_MONO = 49168u /* (IN_VOICE_UPLINK_MONO | IN_VOICE_DNLINK_MONO) */,
COUNT_MAX = 30u,
INDEX_HDR = 2147483648u /* REPRESENTATION_INDEX << COUNT_MAX */,
INDEX_MASK_1 = 2147483649u /* INDEX_HDR | ((1 << 1) - 1) */,
INDEX_MASK_2 = 2147483651u /* INDEX_HDR | ((1 << 2) - 1) */,
INDEX_MASK_3 = 2147483655u /* INDEX_HDR | ((1 << 3) - 1) */,
INDEX_MASK_4 = 2147483663u /* INDEX_HDR | ((1 << 4) - 1) */,
INDEX_MASK_5 = 2147483679u /* INDEX_HDR | ((1 << 5) - 1) */,
INDEX_MASK_6 = 2147483711u /* INDEX_HDR | ((1 << 6) - 1) */,
INDEX_MASK_7 = 2147483775u /* INDEX_HDR | ((1 << 7) - 1) */,
INDEX_MASK_8 = 2147483903u /* INDEX_HDR | ((1 << 8) - 1) */,
};
/**
* Major modes for a mobile device. The current mode setting affects audio
* routing.
*/
enum class AudioMode : int32_t {
NORMAL = 0,
RINGTONE = 1,
/**
* Calls handled by the telephony stack (Eg: PSTN).
*/
IN_CALL = 2,
/**
* Calls handled by apps (Eg: Hangout).
*/
IN_COMMUNICATION = 3,
};
enum class AudioDevice : uint32_t {
NONE = 0u /* 0x0 */,
/**
* reserved bits
*/
BIT_IN = 2147483648u /* 0x80000000 */,
BIT_DEFAULT = 1073741824u /* 0x40000000 */,
/**
* output devices
*/
OUT_EARPIECE = 1u /* 0x1 */,
OUT_SPEAKER = 2u /* 0x2 */,
OUT_WIRED_HEADSET = 4u /* 0x4 */,
OUT_WIRED_HEADPHONE = 8u /* 0x8 */,
OUT_BLUETOOTH_SCO = 16u /* 0x10 */,
OUT_BLUETOOTH_SCO_HEADSET = 32u /* 0x20 */,
OUT_BLUETOOTH_SCO_CARKIT = 64u /* 0x40 */,
OUT_BLUETOOTH_A2DP = 128u /* 0x80 */,
OUT_BLUETOOTH_A2DP_HEADPHONES = 256u /* 0x100 */,
OUT_BLUETOOTH_A2DP_SPEAKER = 512u /* 0x200 */,
OUT_AUX_DIGITAL = 1024u /* 0x400 */,
OUT_HDMI = 1024u /* OUT_AUX_DIGITAL */,
/**
* uses an analog connection (multiplexed over the USB pins for instance)
*/
OUT_ANLG_DOCK_HEADSET = 2048u /* 0x800 */,
OUT_DGTL_DOCK_HEADSET = 4096u /* 0x1000 */,
/**
* USB accessory mode: Android device is USB device and dock is USB host
*/
OUT_USB_ACCESSORY = 8192u /* 0x2000 */,
/**
* USB host mode: Android device is USB host and dock is USB device
*/
OUT_USB_DEVICE = 16384u /* 0x4000 */,
OUT_REMOTE_SUBMIX = 32768u /* 0x8000 */,
/**
* Telephony voice TX path
*/
OUT_TELEPHONY_TX = 65536u /* 0x10000 */,
/**
* Analog jack with line impedance detected
*/
OUT_LINE = 131072u /* 0x20000 */,
/**
* HDMI Audio Return Channel
*/
OUT_HDMI_ARC = 262144u /* 0x40000 */,
/**
* S/PDIF out
*/
OUT_SPDIF = 524288u /* 0x80000 */,
/**
* FM transmitter out
*/
OUT_FM = 1048576u /* 0x100000 */,
/**
* Line out for av devices
*/
OUT_AUX_LINE = 2097152u /* 0x200000 */,
/**
* limited-output speaker device for acoustic safety
*/
OUT_SPEAKER_SAFE = 4194304u /* 0x400000 */,
OUT_IP = 8388608u /* 0x800000 */,
/**
* audio bus implemented by the audio system (e.g an MOST stereo channel)
*/
OUT_BUS = 16777216u /* 0x1000000 */,
OUT_PROXY = 33554432u /* 0x2000000 */,
OUT_USB_HEADSET = 67108864u /* 0x4000000 */,
OUT_HEARING_AID = 134217728u /* 0x8000000 */,
OUT_ECHO_CANCELLER = 268435456u /* 0x10000000 */,
OUT_DEFAULT = 1073741824u /* BIT_DEFAULT */,
/**
* input devices
*/
IN_COMMUNICATION = 2147483649u /* BIT_IN | 0x1 */,
IN_AMBIENT = 2147483650u /* BIT_IN | 0x2 */,
IN_BUILTIN_MIC = 2147483652u /* BIT_IN | 0x4 */,
IN_BLUETOOTH_SCO_HEADSET = 2147483656u /* BIT_IN | 0x8 */,
IN_WIRED_HEADSET = 2147483664u /* BIT_IN | 0x10 */,
IN_AUX_DIGITAL = 2147483680u /* BIT_IN | 0x20 */,
IN_HDMI = 2147483680u /* IN_AUX_DIGITAL */,
/**
* Telephony voice RX path
*/
IN_VOICE_CALL = 2147483712u /* BIT_IN | 0x40 */,
IN_TELEPHONY_RX = 2147483712u /* IN_VOICE_CALL */,
IN_BACK_MIC = 2147483776u /* BIT_IN | 0x80 */,
IN_REMOTE_SUBMIX = 2147483904u /* BIT_IN | 0x100 */,
IN_ANLG_DOCK_HEADSET = 2147484160u /* BIT_IN | 0x200 */,
IN_DGTL_DOCK_HEADSET = 2147484672u /* BIT_IN | 0x400 */,
IN_USB_ACCESSORY = 2147485696u /* BIT_IN | 0x800 */,
IN_USB_DEVICE = 2147487744u /* BIT_IN | 0x1000 */,
/**
* FM tuner input
*/
IN_FM_TUNER = 2147491840u /* BIT_IN | 0x2000 */,
/**
* TV tuner input
*/
IN_TV_TUNER = 2147500032u /* BIT_IN | 0x4000 */,
/**
* Analog jack with line impedance detected
*/
IN_LINE = 2147516416u /* BIT_IN | 0x8000 */,
/**
* S/PDIF in
*/
IN_SPDIF = 2147549184u /* BIT_IN | 0x10000 */,
IN_BLUETOOTH_A2DP = 2147614720u /* BIT_IN | 0x20000 */,
IN_LOOPBACK = 2147745792u /* BIT_IN | 0x40000 */,
IN_IP = 2148007936u /* BIT_IN | 0x80000 */,
/**
* audio bus implemented by the audio system (e.g an MOST stereo channel)
*/
IN_BUS = 2148532224u /* BIT_IN | 0x100000 */,
IN_PROXY = 2164260864u /* BIT_IN | 0x1000000 */,
IN_USB_HEADSET = 2181038080u /* BIT_IN | 0x2000000 */,
IN_BLUETOOTH_BLE = 2214592512u /* BIT_IN | 0x4000000 */,
IN_DEFAULT = 3221225472u /* BIT_IN | BIT_DEFAULT */,
};
/**
* The audio output flags serve two purposes:
*
* - when an AudioTrack is created they indicate a "wish" to be connected to an
* output stream with attributes corresponding to the specified flags;
*
* - when present in an output profile descriptor listed for a particular audio
* hardware module, they indicate that an output stream can be opened that
* supports the attributes indicated by the flags.
*
* The audio policy manager will try to match the flags in the request
* (when getOuput() is called) to an available output stream.
*/
enum class AudioOutputFlag : int32_t {
NONE = 0 /* 0x0 */,
DIRECT = 1 /* 0x1 */,
PRIMARY = 2 /* 0x2 */,
FAST = 4 /* 0x4 */,
DEEP_BUFFER = 8 /* 0x8 */,
COMPRESS_OFFLOAD = 16 /* 0x10 */,
NON_BLOCKING = 32 /* 0x20 */,
HW_AV_SYNC = 64 /* 0x40 */,
TTS = 128 /* 0x80 */,
RAW = 256 /* 0x100 */,
SYNC = 512 /* 0x200 */,
IEC958_NONAUDIO = 1024 /* 0x400 */,
DIRECT_PCM = 8192 /* 0x2000 */,
MMAP_NOIRQ = 16384 /* 0x4000 */,
VOIP_RX = 32768 /* 0x8000 */,
/**
* preferred output for call music
*/
INCALL_MUSIC = 65536 /* 0x10000 */,
};
/**
* The audio input flags are analogous to audio output flags.
* Currently they are used only when an AudioRecord is created,
* to indicate a preference to be connected to an input stream with
* attributes corresponding to the specified flags.
*/
enum class AudioInputFlag : int32_t {
NONE = 0 /* 0x0 */,
FAST = 1 /* 0x1 */,
HW_HOTWORD = 2 /* 0x2 */,
RAW = 4 /* 0x4 */,
SYNC = 8 /* 0x8 */,
MMAP_NOIRQ = 16 /* 0x10 */,
VOIP_TX = 32 /* 0x20 */,
HW_AV_SYNC = 64 /* 0x40 */,
};
enum class AudioUsage : int32_t {
UNKNOWN = 0,
MEDIA = 1,
VOICE_COMMUNICATION = 2,
VOICE_COMMUNICATION_SIGNALLING = 3,
ALARM = 4,
NOTIFICATION = 5,
NOTIFICATION_TELEPHONY_RINGTONE = 6,
ASSISTANCE_ACCESSIBILITY = 11,
ASSISTANCE_NAVIGATION_GUIDANCE = 12,
ASSISTANCE_SONIFICATION = 13,
GAME = 14,
VIRTUAL_SOURCE = 15,
ASSISTANT = 16,
};
/**
* Type of audio generated by an application.
*/
enum class AudioContentType : uint32_t {
UNKNOWN = 0u,
SPEECH = 1u,
MUSIC = 2u,
MOVIE = 3u,
SONIFICATION = 4u,
};
/**
* Additional information about the stream passed to hardware decoders.
*/
struct AudioOffloadInfo final {
uint32_t sampleRateHz __attribute__ ((aligned(4)));
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioChannelMask> channelMask __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioFormat format __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioStreamType streamType __attribute__ ((aligned(4)));
uint32_t bitRatePerSecond __attribute__ ((aligned(4)));
int64_t durationMicroseconds __attribute__ ((aligned(8)));
bool hasVideo __attribute__ ((aligned(1)));
bool isStreaming __attribute__ ((aligned(1)));
uint32_t bitWidth __attribute__ ((aligned(4)));
uint32_t bufferSize __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioUsage usage __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, sampleRateHz) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, channelMask) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, format) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, streamType) == 12, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, bitRatePerSecond) == 16, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, durationMicroseconds) == 24, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, hasVideo) == 32, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, isStreaming) == 33, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, bitWidth) == 36, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, bufferSize) == 40, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioOffloadInfo, usage) == 44, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioOffloadInfo) == 48, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioOffloadInfo) == 8, "wrong alignment");
/**
* Commonly used audio stream configuration parameters.
*/
struct AudioConfig final {
uint32_t sampleRateHz __attribute__ ((aligned(4)));
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioChannelMask> channelMask __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioFormat format __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioOffloadInfo offloadInfo __attribute__ ((aligned(8)));
uint64_t frameCount __attribute__ ((aligned(8)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioConfig, sampleRateHz) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioConfig, channelMask) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioConfig, format) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioConfig, offloadInfo) == 16, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioConfig, frameCount) == 64, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioConfig) == 72, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioConfig) == 8, "wrong alignment");
/*
* Volume control
*
*
*
* Type of gain control exposed by an audio port.
*/
enum class AudioGainMode : uint32_t {
JOINT = 1u /* 0x1 */,
CHANNELS = 2u /* 0x2 */,
RAMP = 4u /* 0x4 */,
};
/**
* An audio_gain struct is a representation of a gain stage.
* A gain stage is always attached to an audio port.
*/
struct AudioGain final {
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioGainMode> mode __attribute__ ((aligned(4)));
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioChannelMask> channelMask __attribute__ ((aligned(4)));
int32_t minValue __attribute__ ((aligned(4)));
int32_t maxValue __attribute__ ((aligned(4)));
int32_t defaultValue __attribute__ ((aligned(4)));
uint32_t stepValue __attribute__ ((aligned(4)));
uint32_t minRampMs __attribute__ ((aligned(4)));
uint32_t maxRampMs __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, mode) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, channelMask) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, minValue) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, maxValue) == 12, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, defaultValue) == 16, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, stepValue) == 20, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, minRampMs) == 24, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGain, maxRampMs) == 28, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioGain) == 32, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioGain) == 4, "wrong alignment");
/**
* The gain configuration structure is used to get or set the gain values of a
* given port.
*/
struct AudioGainConfig final {
int32_t index __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioGainMode mode __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioChannelMask channelMask __attribute__ ((aligned(4)));
/**
* 4 = sizeof(AudioChannelMask),
* 8 is not "FCC_8", so it won't need to be changed for > 8 channels.
* Gain values in millibels for each channel ordered from LSb to MSb in
* channel mask. The number of values is 1 in joint mode or
* popcount(channel_mask).
*/
::android::hardware::hidl_array<int32_t, 32 /* 4 * 8 */> values __attribute__ ((aligned(4)));
uint32_t rampDurationMs __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGainConfig, index) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGainConfig, mode) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGainConfig, channelMask) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGainConfig, values) == 12, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioGainConfig, rampDurationMs) == 140, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioGainConfig) == 144, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioGainConfig) == 4, "wrong alignment");
/*
* Routing control
*
*
*
* Types defined here are used to describe an audio source or sink at internal
* framework interfaces (audio policy, patch panel) or at the audio HAL.
* Sink and sources are grouped in a concept of “audio port” representing an
* audio end point at the edge of the system managed by the module exposing
* the interface.
*
*
* Audio port role: either source or sink
*/
enum class AudioPortRole : int32_t {
NONE = 0,
SOURCE = 1 /* ::android::hardware::audio::common::V4_0::AudioPortRole.NONE implicitly + 1 */,
SINK = 2 /* ::android::hardware::audio::common::V4_0::AudioPortRole.SOURCE implicitly + 1 */,
};
/**
* Audio port type indicates if it is a session (e.g AudioTrack), a mix (e.g
* PlaybackThread output) or a physical device (e.g OUT_SPEAKER)
*/
enum class AudioPortType : int32_t {
NONE = 0,
DEVICE = 1 /* ::android::hardware::audio::common::V4_0::AudioPortType.NONE implicitly + 1 */,
MIX = 2 /* ::android::hardware::audio::common::V4_0::AudioPortType.DEVICE implicitly + 1 */,
SESSION = 3 /* ::android::hardware::audio::common::V4_0::AudioPortType.MIX implicitly + 1 */,
};
/**
* Extension for audio port configuration structure when the audio port is a
* hardware device.
*/
struct AudioPortConfigDeviceExt final {
int32_t hwModule __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioDevice type __attribute__ ((aligned(4)));
::android::hardware::hidl_array<uint8_t, 32> address __attribute__ ((aligned(1)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt, hwModule) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt, type) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt, address) == 8, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt) == 40, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt) == 4, "wrong alignment");
/**
* Extension for audio port configuration structure when the audio port is an
* audio session.
*/
struct AudioPortConfigSessionExt final {
int32_t session __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt, session) == 0, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt) == 4, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt) == 4, "wrong alignment");
/**
* Flags indicating which fields are to be considered in AudioPortConfig.
*/
enum class AudioPortConfigMask : uint32_t {
SAMPLE_RATE = 1u /* 0x1 */,
CHANNEL_MASK = 2u /* 0x2 */,
FORMAT = 4u /* 0x4 */,
GAIN = 8u /* 0x8 */,
};
/**
* Audio port configuration structure used to specify a particular configuration
* of an audio port.
*/
struct AudioPortConfig final {
// Forward declaration for forward reference support:
union Ext;
union Ext final {
// Forward declaration for forward reference support:
struct AudioPortConfigMixExt;
struct AudioPortConfigMixExt final {
// Forward declaration for forward reference support:
union UseCase;
union UseCase final {
::android::hardware::audio::common::V4_0::AudioStreamType stream __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioSource source __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase, stream) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase, source) == 0, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase) == 4, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase) == 4, "wrong alignment");
int32_t hwModule __attribute__ ((aligned(4)));
int32_t ioHandle __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase useCase __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt, hwModule) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt, ioHandle) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt, useCase) == 8, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt) == 12, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt) == 4, "wrong alignment");
::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt device __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt mix __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt session __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext, device) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext, mix) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext, session) == 0, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext) == 40, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortConfig::Ext) == 4, "wrong alignment");
int32_t id __attribute__ ((aligned(4)));
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioPortConfigMask> configMask __attribute__ ((aligned(4)));
uint32_t sampleRateHz __attribute__ ((aligned(4)));
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioChannelMask> channelMask __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioFormat format __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioGainConfig gain __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortType type __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortRole role __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortConfig::Ext ext __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, id) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, configMask) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, sampleRateHz) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, channelMask) == 12, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, format) == 16, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, gain) == 20, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, type) == 164, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, role) == 168, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortConfig, ext) == 172, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortConfig) == 212, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortConfig) == 4, "wrong alignment");
/**
* Extension for audio port structure when the audio port is a hardware device.
*/
struct AudioPortDeviceExt final {
int32_t hwModule __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioDevice type __attribute__ ((aligned(4)));
/**
* 32 byte string identifying the port.
*/
::android::hardware::hidl_array<uint8_t, 32> address __attribute__ ((aligned(1)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortDeviceExt, hwModule) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortDeviceExt, type) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortDeviceExt, address) == 8, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortDeviceExt) == 40, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortDeviceExt) == 4, "wrong alignment");
/**
* Latency class of the audio mix.
*/
enum class AudioMixLatencyClass : int32_t {
LOW = 0,
NORMAL = 1 /* ::android::hardware::audio::common::V4_0::AudioMixLatencyClass.LOW implicitly + 1 */,
};
struct AudioPortMixExt final {
int32_t hwModule __attribute__ ((aligned(4)));
int32_t ioHandle __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioMixLatencyClass latencyClass __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortMixExt, hwModule) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortMixExt, ioHandle) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortMixExt, latencyClass) == 8, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortMixExt) == 12, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortMixExt) == 4, "wrong alignment");
/**
* Extension for audio port structure when the audio port is an audio session.
*/
struct AudioPortSessionExt final {
int32_t session __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPortSessionExt, session) == 0, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPortSessionExt) == 4, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPortSessionExt) == 4, "wrong alignment");
struct AudioPort final {
// Forward declaration for forward reference support:
union Ext;
union Ext final {
::android::hardware::audio::common::V4_0::AudioPortDeviceExt device __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortMixExt mix __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortSessionExt session __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort::Ext, device) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort::Ext, mix) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort::Ext, session) == 0, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPort::Ext) == 40, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPort::Ext) == 4, "wrong alignment");
int32_t id __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortRole role __attribute__ ((aligned(4)));
::android::hardware::hidl_string name __attribute__ ((aligned(8)));
::android::hardware::hidl_vec<uint32_t> sampleRates __attribute__ ((aligned(8)));
::android::hardware::hidl_vec<::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioChannelMask>> channelMasks __attribute__ ((aligned(8)));
::android::hardware::hidl_vec<::android::hardware::audio::common::V4_0::AudioFormat> formats __attribute__ ((aligned(8)));
::android::hardware::hidl_vec<::android::hardware::audio::common::V4_0::AudioGain> gains __attribute__ ((aligned(8)));
::android::hardware::audio::common::V4_0::AudioPortConfig activeConfig __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPortType type __attribute__ ((aligned(4)));
::android::hardware::audio::common::V4_0::AudioPort::Ext ext __attribute__ ((aligned(4)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, id) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, role) == 4, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, name) == 8, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, sampleRates) == 24, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, channelMasks) == 40, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, formats) == 56, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, gains) == 72, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, activeConfig) == 88, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, type) == 300, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::AudioPort, ext) == 304, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::AudioPort) == 344, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::AudioPort) == 8, "wrong alignment");
struct ThreadInfo final {
int64_t pid __attribute__ ((aligned(8)));
int64_t tid __attribute__ ((aligned(8)));
};
static_assert(offsetof(::android::hardware::audio::common::V4_0::ThreadInfo, pid) == 0, "wrong offset");
static_assert(offsetof(::android::hardware::audio::common::V4_0::ThreadInfo, tid) == 8, "wrong offset");
static_assert(sizeof(::android::hardware::audio::common::V4_0::ThreadInfo) == 16, "wrong size");
static_assert(__alignof(::android::hardware::audio::common::V4_0::ThreadInfo) == 8, "wrong alignment");
//
// type declarations for package
//
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioHandleConsts o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioHandleConsts o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioHandleConsts lhs, const ::android::hardware::audio::common::V4_0::AudioHandleConsts rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioHandleConsts rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioHandleConsts lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioHandleConsts lhs, const ::android::hardware::audio::common::V4_0::AudioHandleConsts rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioHandleConsts rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioHandleConsts lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioHandleConsts e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioHandleConsts e) {
v &= static_cast<int32_t>(e);
return v;
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::Uuid& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::Uuid& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::Uuid& lhs, const ::android::hardware::audio::common::V4_0::Uuid& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::Uuid& lhs, const ::android::hardware::audio::common::V4_0::Uuid& rhs);
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioStreamType o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioStreamType o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioStreamType lhs, const ::android::hardware::audio::common::V4_0::AudioStreamType rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioStreamType rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioStreamType lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioStreamType lhs, const ::android::hardware::audio::common::V4_0::AudioStreamType rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioStreamType rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioStreamType lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioStreamType e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioStreamType e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioSource o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioSource o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioSource lhs, const ::android::hardware::audio::common::V4_0::AudioSource rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioSource rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioSource lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioSource lhs, const ::android::hardware::audio::common::V4_0::AudioSource rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioSource rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioSource lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioSource e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioSource e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioSessionConsts o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioSessionConsts o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioSessionConsts lhs, const ::android::hardware::audio::common::V4_0::AudioSessionConsts rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioSessionConsts rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioSessionConsts lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioSessionConsts lhs, const ::android::hardware::audio::common::V4_0::AudioSessionConsts rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioSessionConsts rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioSessionConsts lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioSessionConsts e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioSessionConsts e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(uint32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioFormat o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioFormat o, ::std::ostream* os);
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioFormat lhs, const ::android::hardware::audio::common::V4_0::AudioFormat rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioFormat rhs) {
return static_cast<uint32_t>(lhs | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioFormat lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | rhs);
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioFormat lhs, const ::android::hardware::audio::common::V4_0::AudioFormat rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioFormat rhs) {
return static_cast<uint32_t>(lhs & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioFormat lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & rhs);
}
constexpr uint32_t &operator|=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioFormat e) {
v |= static_cast<uint32_t>(e);
return v;
}
constexpr uint32_t &operator&=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioFormat e) {
v &= static_cast<uint32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::FixedChannelCount o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::FixedChannelCount o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::FixedChannelCount lhs, const ::android::hardware::audio::common::V4_0::FixedChannelCount rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::FixedChannelCount rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::FixedChannelCount lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::FixedChannelCount lhs, const ::android::hardware::audio::common::V4_0::FixedChannelCount rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::FixedChannelCount rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::FixedChannelCount lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::FixedChannelCount e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::FixedChannelCount e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(uint32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioChannelMask o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioChannelMask o, ::std::ostream* os);
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioChannelMask lhs, const ::android::hardware::audio::common::V4_0::AudioChannelMask rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioChannelMask rhs) {
return static_cast<uint32_t>(lhs | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioChannelMask lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | rhs);
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioChannelMask lhs, const ::android::hardware::audio::common::V4_0::AudioChannelMask rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioChannelMask rhs) {
return static_cast<uint32_t>(lhs & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioChannelMask lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & rhs);
}
constexpr uint32_t &operator|=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioChannelMask e) {
v |= static_cast<uint32_t>(e);
return v;
}
constexpr uint32_t &operator&=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioChannelMask e) {
v &= static_cast<uint32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioMode o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioMode o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioMode lhs, const ::android::hardware::audio::common::V4_0::AudioMode rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioMode rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioMode lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioMode lhs, const ::android::hardware::audio::common::V4_0::AudioMode rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioMode rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioMode lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioMode e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioMode e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(uint32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioDevice o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioDevice o, ::std::ostream* os);
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioDevice lhs, const ::android::hardware::audio::common::V4_0::AudioDevice rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioDevice rhs) {
return static_cast<uint32_t>(lhs | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioDevice lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | rhs);
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioDevice lhs, const ::android::hardware::audio::common::V4_0::AudioDevice rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioDevice rhs) {
return static_cast<uint32_t>(lhs & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioDevice lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & rhs);
}
constexpr uint32_t &operator|=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioDevice e) {
v |= static_cast<uint32_t>(e);
return v;
}
constexpr uint32_t &operator&=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioDevice e) {
v &= static_cast<uint32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioOutputFlag o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioOutputFlag o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioOutputFlag lhs, const ::android::hardware::audio::common::V4_0::AudioOutputFlag rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioOutputFlag rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioOutputFlag lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioOutputFlag lhs, const ::android::hardware::audio::common::V4_0::AudioOutputFlag rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioOutputFlag rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioOutputFlag lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioOutputFlag e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioOutputFlag e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioInputFlag o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioInputFlag o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioInputFlag lhs, const ::android::hardware::audio::common::V4_0::AudioInputFlag rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioInputFlag rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioInputFlag lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioInputFlag lhs, const ::android::hardware::audio::common::V4_0::AudioInputFlag rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioInputFlag rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioInputFlag lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioInputFlag e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioInputFlag e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioUsage o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioUsage o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioUsage lhs, const ::android::hardware::audio::common::V4_0::AudioUsage rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioUsage rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioUsage lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioUsage lhs, const ::android::hardware::audio::common::V4_0::AudioUsage rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioUsage rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioUsage lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioUsage e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioUsage e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(uint32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioContentType o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioContentType o, ::std::ostream* os);
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioContentType lhs, const ::android::hardware::audio::common::V4_0::AudioContentType rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioContentType rhs) {
return static_cast<uint32_t>(lhs | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioContentType lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | rhs);
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioContentType lhs, const ::android::hardware::audio::common::V4_0::AudioContentType rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioContentType rhs) {
return static_cast<uint32_t>(lhs & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioContentType lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & rhs);
}
constexpr uint32_t &operator|=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioContentType e) {
v |= static_cast<uint32_t>(e);
return v;
}
constexpr uint32_t &operator&=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioContentType e) {
v &= static_cast<uint32_t>(e);
return v;
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& lhs, const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& lhs, const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& rhs);
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioConfig& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioConfig& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioConfig& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioConfig& rhs);
template<typename>
static inline std::string toString(uint32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioGainMode o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioGainMode o, ::std::ostream* os);
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioGainMode lhs, const ::android::hardware::audio::common::V4_0::AudioGainMode rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioGainMode rhs) {
return static_cast<uint32_t>(lhs | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioGainMode lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | rhs);
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioGainMode lhs, const ::android::hardware::audio::common::V4_0::AudioGainMode rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioGainMode rhs) {
return static_cast<uint32_t>(lhs & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioGainMode lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & rhs);
}
constexpr uint32_t &operator|=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioGainMode e) {
v |= static_cast<uint32_t>(e);
return v;
}
constexpr uint32_t &operator&=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioGainMode e) {
v &= static_cast<uint32_t>(e);
return v;
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioGain& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioGain& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioGain& lhs, const ::android::hardware::audio::common::V4_0::AudioGain& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioGain& lhs, const ::android::hardware::audio::common::V4_0::AudioGain& rhs);
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioGainConfig& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioGainConfig& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioGainConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioGainConfig& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioGainConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioGainConfig& rhs);
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioPortRole o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioPortRole o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioPortRole lhs, const ::android::hardware::audio::common::V4_0::AudioPortRole rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioPortRole rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioPortRole lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioPortRole lhs, const ::android::hardware::audio::common::V4_0::AudioPortRole rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioPortRole rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioPortRole lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioPortRole e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioPortRole e) {
v &= static_cast<int32_t>(e);
return v;
}
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioPortType o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioPortType o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioPortType lhs, const ::android::hardware::audio::common::V4_0::AudioPortType rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioPortType rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioPortType lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioPortType lhs, const ::android::hardware::audio::common::V4_0::AudioPortType rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioPortType rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioPortType lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioPortType e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioPortType e) {
v &= static_cast<int32_t>(e);
return v;
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& rhs);
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& rhs);
template<typename>
static inline std::string toString(uint32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioPortConfigMask o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioPortConfigMask o, ::std::ostream* os);
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioPortConfigMask lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigMask rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigMask rhs) {
return static_cast<uint32_t>(lhs | static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator|(const ::android::hardware::audio::common::V4_0::AudioPortConfigMask lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) | rhs);
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioPortConfigMask lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigMask rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const uint32_t lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigMask rhs) {
return static_cast<uint32_t>(lhs & static_cast<uint32_t>(rhs));
}
constexpr uint32_t operator&(const ::android::hardware::audio::common::V4_0::AudioPortConfigMask lhs, const uint32_t rhs) {
return static_cast<uint32_t>(static_cast<uint32_t>(lhs) & rhs);
}
constexpr uint32_t &operator|=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioPortConfigMask e) {
v |= static_cast<uint32_t>(e);
return v;
}
constexpr uint32_t &operator&=(uint32_t& v, const ::android::hardware::audio::common::V4_0::AudioPortConfigMask e) {
v &= static_cast<uint32_t>(e);
return v;
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase& o, ::std::ostream*);
// operator== and operator!= are not generated for UseCase
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt& o, ::std::ostream*);
// operator== and operator!= are not generated for AudioPortConfigMixExt
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext& o, ::std::ostream*);
// operator== and operator!= are not generated for Ext
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig& o, ::std::ostream*);
// operator== and operator!= are not generated for AudioPortConfig
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& rhs);
template<typename>
static inline std::string toString(int32_t o);
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioMixLatencyClass o);
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioMixLatencyClass o, ::std::ostream* os);
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass lhs, const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass rhs) {
return static_cast<int32_t>(lhs | static_cast<int32_t>(rhs));
}
constexpr int32_t operator|(const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) | rhs);
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass lhs, const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const int32_t lhs, const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass rhs) {
return static_cast<int32_t>(lhs & static_cast<int32_t>(rhs));
}
constexpr int32_t operator&(const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass lhs, const int32_t rhs) {
return static_cast<int32_t>(static_cast<int32_t>(lhs) & rhs);
}
constexpr int32_t &operator|=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass e) {
v |= static_cast<int32_t>(e);
return v;
}
constexpr int32_t &operator&=(int32_t& v, const ::android::hardware::audio::common::V4_0::AudioMixLatencyClass e) {
v &= static_cast<int32_t>(e);
return v;
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortMixExt& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortMixExt& rhs);
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& rhs);
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPort::Ext& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPort::Ext& o, ::std::ostream*);
// operator== and operator!= are not generated for Ext
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPort& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPort& o, ::std::ostream*);
// operator== and operator!= are not generated for AudioPort
static inline std::string toString(const ::android::hardware::audio::common::V4_0::ThreadInfo& o);
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::ThreadInfo& o, ::std::ostream*);
static inline bool operator==(const ::android::hardware::audio::common::V4_0::ThreadInfo& lhs, const ::android::hardware::audio::common::V4_0::ThreadInfo& rhs);
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::ThreadInfo& lhs, const ::android::hardware::audio::common::V4_0::ThreadInfo& rhs);
//
// type header definitions for package
//
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioHandleConsts>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioHandleConsts> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_IO_HANDLE_NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_IO_HANDLE_NONE)) {
os += (first ? "" : " | ");
os += "AUDIO_IO_HANDLE_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_IO_HANDLE_NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_MODULE_HANDLE_NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_MODULE_HANDLE_NONE)) {
os += (first ? "" : " | ");
os += "AUDIO_MODULE_HANDLE_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_MODULE_HANDLE_NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PORT_HANDLE_NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PORT_HANDLE_NONE)) {
os += (first ? "" : " | ");
os += "AUDIO_PORT_HANDLE_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PORT_HANDLE_NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PATCH_HANDLE_NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PATCH_HANDLE_NONE)) {
os += (first ? "" : " | ");
os += "AUDIO_PATCH_HANDLE_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PATCH_HANDLE_NONE;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioHandleConsts o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_IO_HANDLE_NONE) {
return "AUDIO_IO_HANDLE_NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_MODULE_HANDLE_NONE) {
return "AUDIO_MODULE_HANDLE_NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PORT_HANDLE_NONE) {
return "AUDIO_PORT_HANDLE_NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PATCH_HANDLE_NONE) {
return "AUDIO_PATCH_HANDLE_NONE";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioHandleConsts o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::Uuid& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".timeLow = ";
os += ::android::hardware::toString(o.timeLow);
os += ", .timeMid = ";
os += ::android::hardware::toString(o.timeMid);
os += ", .versionAndTimeHigh = ";
os += ::android::hardware::toString(o.versionAndTimeHigh);
os += ", .variantAndClockSeqHigh = ";
os += ::android::hardware::toString(o.variantAndClockSeqHigh);
os += ", .node = ";
os += ::android::hardware::toString(o.node);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::Uuid& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::Uuid& lhs, const ::android::hardware::audio::common::V4_0::Uuid& rhs) {
if (lhs.timeLow != rhs.timeLow) {
return false;
}
if (lhs.timeMid != rhs.timeMid) {
return false;
}
if (lhs.versionAndTimeHigh != rhs.versionAndTimeHigh) {
return false;
}
if (lhs.variantAndClockSeqHigh != rhs.variantAndClockSeqHigh) {
return false;
}
if (lhs.node != rhs.node) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::Uuid& lhs, const ::android::hardware::audio::common::V4_0::Uuid& rhs){
return !(lhs == rhs);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioStreamType>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioStreamType> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::DEFAULT) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::DEFAULT)) {
os += (first ? "" : " | ");
os += "DEFAULT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::DEFAULT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::MIN) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::MIN)) {
os += (first ? "" : " | ");
os += "MIN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::MIN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::VOICE_CALL) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::VOICE_CALL)) {
os += (first ? "" : " | ");
os += "VOICE_CALL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::VOICE_CALL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::SYSTEM) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::SYSTEM)) {
os += (first ? "" : " | ");
os += "SYSTEM";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::SYSTEM;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::RING) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::RING)) {
os += (first ? "" : " | ");
os += "RING";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::RING;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::MUSIC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::MUSIC)) {
os += (first ? "" : " | ");
os += "MUSIC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::MUSIC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::ALARM) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::ALARM)) {
os += (first ? "" : " | ");
os += "ALARM";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::ALARM;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::NOTIFICATION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::NOTIFICATION)) {
os += (first ? "" : " | ");
os += "NOTIFICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::NOTIFICATION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::BLUETOOTH_SCO) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::BLUETOOTH_SCO)) {
os += (first ? "" : " | ");
os += "BLUETOOTH_SCO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::BLUETOOTH_SCO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::ENFORCED_AUDIBLE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::ENFORCED_AUDIBLE)) {
os += (first ? "" : " | ");
os += "ENFORCED_AUDIBLE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::ENFORCED_AUDIBLE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::DTMF) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::DTMF)) {
os += (first ? "" : " | ");
os += "DTMF";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::DTMF;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::TTS) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::TTS)) {
os += (first ? "" : " | ");
os += "TTS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::TTS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioStreamType::ACCESSIBILITY) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioStreamType::ACCESSIBILITY)) {
os += (first ? "" : " | ");
os += "ACCESSIBILITY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioStreamType::ACCESSIBILITY;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioStreamType o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::DEFAULT) {
return "DEFAULT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::MIN) {
return "MIN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::VOICE_CALL) {
return "VOICE_CALL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::SYSTEM) {
return "SYSTEM";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::RING) {
return "RING";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::MUSIC) {
return "MUSIC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::ALARM) {
return "ALARM";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::NOTIFICATION) {
return "NOTIFICATION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::BLUETOOTH_SCO) {
return "BLUETOOTH_SCO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::ENFORCED_AUDIBLE) {
return "ENFORCED_AUDIBLE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::DTMF) {
return "DTMF";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::TTS) {
return "TTS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioStreamType::ACCESSIBILITY) {
return "ACCESSIBILITY";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioStreamType o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioSource>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioSource> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::DEFAULT) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::DEFAULT)) {
os += (first ? "" : " | ");
os += "DEFAULT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::DEFAULT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::MIC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::MIC)) {
os += (first ? "" : " | ");
os += "MIC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::MIC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::VOICE_UPLINK) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::VOICE_UPLINK)) {
os += (first ? "" : " | ");
os += "VOICE_UPLINK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::VOICE_UPLINK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::VOICE_DOWNLINK) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::VOICE_DOWNLINK)) {
os += (first ? "" : " | ");
os += "VOICE_DOWNLINK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::VOICE_DOWNLINK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::VOICE_CALL) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::VOICE_CALL)) {
os += (first ? "" : " | ");
os += "VOICE_CALL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::VOICE_CALL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::CAMCORDER) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::CAMCORDER)) {
os += (first ? "" : " | ");
os += "CAMCORDER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::CAMCORDER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::VOICE_RECOGNITION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::VOICE_RECOGNITION)) {
os += (first ? "" : " | ");
os += "VOICE_RECOGNITION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::VOICE_RECOGNITION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::VOICE_COMMUNICATION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::VOICE_COMMUNICATION)) {
os += (first ? "" : " | ");
os += "VOICE_COMMUNICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::VOICE_COMMUNICATION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::REMOTE_SUBMIX) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::REMOTE_SUBMIX)) {
os += (first ? "" : " | ");
os += "REMOTE_SUBMIX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::REMOTE_SUBMIX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::UNPROCESSED) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::UNPROCESSED)) {
os += (first ? "" : " | ");
os += "UNPROCESSED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::UNPROCESSED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSource::FM_TUNER) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSource::FM_TUNER)) {
os += (first ? "" : " | ");
os += "FM_TUNER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSource::FM_TUNER;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioSource o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioSource::DEFAULT) {
return "DEFAULT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::MIC) {
return "MIC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::VOICE_UPLINK) {
return "VOICE_UPLINK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::VOICE_DOWNLINK) {
return "VOICE_DOWNLINK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::VOICE_CALL) {
return "VOICE_CALL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::CAMCORDER) {
return "CAMCORDER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::VOICE_RECOGNITION) {
return "VOICE_RECOGNITION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::VOICE_COMMUNICATION) {
return "VOICE_COMMUNICATION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::REMOTE_SUBMIX) {
return "REMOTE_SUBMIX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::UNPROCESSED) {
return "UNPROCESSED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSource::FM_TUNER) {
return "FM_TUNER";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioSource o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioSessionConsts>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioSessionConsts> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_STAGE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_STAGE)) {
os += (first ? "" : " | ");
os += "OUTPUT_STAGE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_STAGE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_MIX) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_MIX)) {
os += (first ? "" : " | ");
os += "OUTPUT_MIX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_MIX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSessionConsts::ALLOCATE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSessionConsts::ALLOCATE)) {
os += (first ? "" : " | ");
os += "ALLOCATE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSessionConsts::ALLOCATE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioSessionConsts::NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioSessionConsts::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioSessionConsts::NONE;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioSessionConsts o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_STAGE) {
return "OUTPUT_STAGE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_MIX) {
return "OUTPUT_MIX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSessionConsts::ALLOCATE) {
return "ALLOCATE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioSessionConsts::NONE) {
return "NONE";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioSessionConsts o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioFormat>(uint32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioFormat> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::INVALID) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::INVALID)) {
os += (first ? "" : " | ");
os += "INVALID";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::INVALID;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::DEFAULT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::DEFAULT)) {
os += (first ? "" : " | ");
os += "DEFAULT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::DEFAULT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM)) {
os += (first ? "" : " | ");
os += "PCM";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MP3) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MP3)) {
os += (first ? "" : " | ");
os += "MP3";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MP3;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AMR_NB) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AMR_NB)) {
os += (first ? "" : " | ");
os += "AMR_NB";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AMR_NB;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB)) {
os += (first ? "" : " | ");
os += "AMR_WB";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC)) {
os += (first ? "" : " | ");
os += "AAC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V1)) {
os += (first ? "" : " | ");
os += "HE_AAC_V1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V2)) {
os += (first ? "" : " | ");
os += "HE_AAC_V2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::VORBIS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::VORBIS)) {
os += (first ? "" : " | ");
os += "VORBIS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::VORBIS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::OPUS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::OPUS)) {
os += (first ? "" : " | ");
os += "OPUS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::OPUS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AC3) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AC3)) {
os += (first ? "" : " | ");
os += "AC3";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AC3;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::E_AC3)) {
os += (first ? "" : " | ");
os += "E_AC3";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::DTS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::DTS)) {
os += (first ? "" : " | ");
os += "DTS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::DTS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::DTS_HD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::DTS_HD)) {
os += (first ? "" : " | ");
os += "DTS_HD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::DTS_HD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::IEC61937) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::IEC61937)) {
os += (first ? "" : " | ");
os += "IEC61937";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::IEC61937;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::DOLBY_TRUEHD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::DOLBY_TRUEHD)) {
os += (first ? "" : " | ");
os += "DOLBY_TRUEHD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::DOLBY_TRUEHD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::EVRC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::EVRC)) {
os += (first ? "" : " | ");
os += "EVRC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::EVRC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::EVRCB) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::EVRCB)) {
os += (first ? "" : " | ");
os += "EVRCB";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::EVRCB;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::EVRCWB) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::EVRCWB)) {
os += (first ? "" : " | ");
os += "EVRCWB";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::EVRCWB;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::EVRCNW) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::EVRCNW)) {
os += (first ? "" : " | ");
os += "EVRCNW";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::EVRCNW;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADIF) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADIF)) {
os += (first ? "" : " | ");
os += "AAC_ADIF";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADIF;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::WMA) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::WMA)) {
os += (first ? "" : " | ");
os += "WMA";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::WMA;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::WMA_PRO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::WMA_PRO)) {
os += (first ? "" : " | ");
os += "WMA_PRO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::WMA_PRO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB_PLUS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB_PLUS)) {
os += (first ? "" : " | ");
os += "AMR_WB_PLUS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB_PLUS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MP2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MP2)) {
os += (first ? "" : " | ");
os += "MP2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MP2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::QCELP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::QCELP)) {
os += (first ? "" : " | ");
os += "QCELP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::QCELP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::DSD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::DSD)) {
os += (first ? "" : " | ");
os += "DSD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::DSD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::FLAC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::FLAC)) {
os += (first ? "" : " | ");
os += "FLAC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::FLAC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::ALAC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::ALAC)) {
os += (first ? "" : " | ");
os += "ALAC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::ALAC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::APE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::APE)) {
os += (first ? "" : " | ");
os += "APE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::APE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS)) {
os += (first ? "" : " | ");
os += "AAC_ADTS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::SBC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::SBC)) {
os += (first ? "" : " | ");
os += "SBC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::SBC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::APTX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::APTX)) {
os += (first ? "" : " | ");
os += "APTX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::APTX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::APTX_HD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::APTX_HD)) {
os += (first ? "" : " | ");
os += "APTX_HD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::APTX_HD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AC4) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AC4)) {
os += (first ? "" : " | ");
os += "AC4";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AC4;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::LDAC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::LDAC)) {
os += (first ? "" : " | ");
os += "LDAC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::LDAC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT)) {
os += (first ? "" : " | ");
os += "MAT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAIN_MASK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAIN_MASK)) {
os += (first ? "" : " | ");
os += "MAIN_MASK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAIN_MASK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::SUB_MASK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::SUB_MASK)) {
os += (first ? "" : " | ");
os += "SUB_MASK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::SUB_MASK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_16_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_16_BIT)) {
os += (first ? "" : " | ");
os += "PCM_SUB_16_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_16_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_BIT)) {
os += (first ? "" : " | ");
os += "PCM_SUB_8_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_32_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_32_BIT)) {
os += (first ? "" : " | ");
os += "PCM_SUB_32_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_32_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_24_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_24_BIT)) {
os += (first ? "" : " | ");
os += "PCM_SUB_8_24_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_24_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_FLOAT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_FLOAT)) {
os += (first ? "" : " | ");
os += "PCM_SUB_FLOAT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_FLOAT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_24_BIT_PACKED) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_24_BIT_PACKED)) {
os += (first ? "" : " | ");
os += "PCM_SUB_24_BIT_PACKED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_24_BIT_PACKED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MP3_SUB_NONE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MP3_SUB_NONE)) {
os += (first ? "" : " | ");
os += "MP3_SUB_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MP3_SUB_NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AMR_SUB_NONE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AMR_SUB_NONE)) {
os += (first ? "" : " | ");
os += "AMR_SUB_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AMR_SUB_NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_MAIN) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_MAIN)) {
os += (first ? "" : " | ");
os += "AAC_SUB_MAIN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_MAIN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LC)) {
os += (first ? "" : " | ");
os += "AAC_SUB_LC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SSR) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SSR)) {
os += (first ? "" : " | ");
os += "AAC_SUB_SSR";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SSR;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LTP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LTP)) {
os += (first ? "" : " | ");
os += "AAC_SUB_LTP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LTP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V1)) {
os += (first ? "" : " | ");
os += "AAC_SUB_HE_V1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SCALABLE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SCALABLE)) {
os += (first ? "" : " | ");
os += "AAC_SUB_SCALABLE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SCALABLE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ERLC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ERLC)) {
os += (first ? "" : " | ");
os += "AAC_SUB_ERLC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ERLC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LD)) {
os += (first ? "" : " | ");
os += "AAC_SUB_LD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V2)) {
os += (first ? "" : " | ");
os += "AAC_SUB_HE_V2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ELD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ELD)) {
os += (first ? "" : " | ");
os += "AAC_SUB_ELD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ELD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_XHE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_XHE)) {
os += (first ? "" : " | ");
os += "AAC_SUB_XHE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_XHE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::VORBIS_SUB_NONE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::VORBIS_SUB_NONE)) {
os += (first ? "" : " | ");
os += "VORBIS_SUB_NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::VORBIS_SUB_NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_SUB_JOC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_SUB_JOC)) {
os += (first ? "" : " | ");
os += "E_AC3_SUB_JOC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_SUB_JOC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_1_0) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_1_0)) {
os += (first ? "" : " | ");
os += "MAT_SUB_1_0";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_1_0;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_0) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_0)) {
os += (first ? "" : " | ");
os += "MAT_SUB_2_0";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_0;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_1)) {
os += (first ? "" : " | ");
os += "MAT_SUB_2_1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_16_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_16_BIT)) {
os += (first ? "" : " | ");
os += "PCM_16_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_16_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_BIT)) {
os += (first ? "" : " | ");
os += "PCM_8_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_32_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_32_BIT)) {
os += (first ? "" : " | ");
os += "PCM_32_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_32_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_24_BIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_24_BIT)) {
os += (first ? "" : " | ");
os += "PCM_8_24_BIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_24_BIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_FLOAT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_FLOAT)) {
os += (first ? "" : " | ");
os += "PCM_FLOAT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_FLOAT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::PCM_24_BIT_PACKED) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::PCM_24_BIT_PACKED)) {
os += (first ? "" : " | ");
os += "PCM_24_BIT_PACKED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::PCM_24_BIT_PACKED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_MAIN) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_MAIN)) {
os += (first ? "" : " | ");
os += "AAC_MAIN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_MAIN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_LC)) {
os += (first ? "" : " | ");
os += "AAC_LC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SSR) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SSR)) {
os += (first ? "" : " | ");
os += "AAC_SSR";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SSR;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LTP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_LTP)) {
os += (first ? "" : " | ");
os += "AAC_LTP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LTP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V1)) {
os += (first ? "" : " | ");
os += "AAC_HE_V1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SCALABLE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_SCALABLE)) {
os += (first ? "" : " | ");
os += "AAC_SCALABLE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SCALABLE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ERLC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ERLC)) {
os += (first ? "" : " | ");
os += "AAC_ERLC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ERLC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_LD)) {
os += (first ? "" : " | ");
os += "AAC_LD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V2)) {
os += (first ? "" : " | ");
os += "AAC_HE_V2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ELD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ELD)) {
os += (first ? "" : " | ");
os += "AAC_ELD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ELD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_XHE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_XHE)) {
os += (first ? "" : " | ");
os += "AAC_XHE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_XHE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_MAIN) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_MAIN)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_MAIN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_MAIN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LC)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_LC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SSR) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SSR)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_SSR";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SSR;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LTP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LTP)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_LTP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LTP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V1)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_HE_V1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SCALABLE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SCALABLE)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_SCALABLE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SCALABLE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ERLC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ERLC)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_ERLC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ERLC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LD)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_LD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V2)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_HE_V2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ELD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ELD)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_ELD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ELD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_XHE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_XHE)) {
os += (first ? "" : " | ");
os += "AAC_ADTS_XHE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_XHE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_JOC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_JOC)) {
os += (first ? "" : " | ");
os += "E_AC3_JOC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_JOC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT_1_0) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT_1_0)) {
os += (first ? "" : " | ");
os += "MAT_1_0";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT_1_0;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_0) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_0)) {
os += (first ? "" : " | ");
os += "MAT_2_0";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_0;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_1)) {
os += (first ? "" : " | ");
os += "MAT_2_1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_1;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioFormat o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::INVALID) {
return "INVALID";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::DEFAULT) {
return "DEFAULT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM) {
return "PCM";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MP3) {
return "MP3";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AMR_NB) {
return "AMR_NB";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB) {
return "AMR_WB";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC) {
return "AAC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V1) {
return "HE_AAC_V1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V2) {
return "HE_AAC_V2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::VORBIS) {
return "VORBIS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::OPUS) {
return "OPUS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AC3) {
return "AC3";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3) {
return "E_AC3";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::DTS) {
return "DTS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::DTS_HD) {
return "DTS_HD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::IEC61937) {
return "IEC61937";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::DOLBY_TRUEHD) {
return "DOLBY_TRUEHD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::EVRC) {
return "EVRC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::EVRCB) {
return "EVRCB";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::EVRCWB) {
return "EVRCWB";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::EVRCNW) {
return "EVRCNW";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADIF) {
return "AAC_ADIF";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::WMA) {
return "WMA";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::WMA_PRO) {
return "WMA_PRO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB_PLUS) {
return "AMR_WB_PLUS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MP2) {
return "MP2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::QCELP) {
return "QCELP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::DSD) {
return "DSD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::FLAC) {
return "FLAC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::ALAC) {
return "ALAC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::APE) {
return "APE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS) {
return "AAC_ADTS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::SBC) {
return "SBC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::APTX) {
return "APTX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::APTX_HD) {
return "APTX_HD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AC4) {
return "AC4";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::LDAC) {
return "LDAC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT) {
return "MAT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAIN_MASK) {
return "MAIN_MASK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::SUB_MASK) {
return "SUB_MASK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_16_BIT) {
return "PCM_SUB_16_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_BIT) {
return "PCM_SUB_8_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_32_BIT) {
return "PCM_SUB_32_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_24_BIT) {
return "PCM_SUB_8_24_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_FLOAT) {
return "PCM_SUB_FLOAT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_24_BIT_PACKED) {
return "PCM_SUB_24_BIT_PACKED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MP3_SUB_NONE) {
return "MP3_SUB_NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AMR_SUB_NONE) {
return "AMR_SUB_NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_MAIN) {
return "AAC_SUB_MAIN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LC) {
return "AAC_SUB_LC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SSR) {
return "AAC_SUB_SSR";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LTP) {
return "AAC_SUB_LTP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V1) {
return "AAC_SUB_HE_V1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SCALABLE) {
return "AAC_SUB_SCALABLE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ERLC) {
return "AAC_SUB_ERLC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LD) {
return "AAC_SUB_LD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V2) {
return "AAC_SUB_HE_V2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ELD) {
return "AAC_SUB_ELD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_XHE) {
return "AAC_SUB_XHE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::VORBIS_SUB_NONE) {
return "VORBIS_SUB_NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_SUB_JOC) {
return "E_AC3_SUB_JOC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_1_0) {
return "MAT_SUB_1_0";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_0) {
return "MAT_SUB_2_0";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_1) {
return "MAT_SUB_2_1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_16_BIT) {
return "PCM_16_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_BIT) {
return "PCM_8_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_32_BIT) {
return "PCM_32_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_24_BIT) {
return "PCM_8_24_BIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_FLOAT) {
return "PCM_FLOAT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::PCM_24_BIT_PACKED) {
return "PCM_24_BIT_PACKED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_MAIN) {
return "AAC_MAIN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LC) {
return "AAC_LC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SSR) {
return "AAC_SSR";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LTP) {
return "AAC_LTP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V1) {
return "AAC_HE_V1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_SCALABLE) {
return "AAC_SCALABLE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ERLC) {
return "AAC_ERLC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_LD) {
return "AAC_LD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V2) {
return "AAC_HE_V2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ELD) {
return "AAC_ELD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_XHE) {
return "AAC_XHE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_MAIN) {
return "AAC_ADTS_MAIN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LC) {
return "AAC_ADTS_LC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SSR) {
return "AAC_ADTS_SSR";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LTP) {
return "AAC_ADTS_LTP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V1) {
return "AAC_ADTS_HE_V1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SCALABLE) {
return "AAC_ADTS_SCALABLE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ERLC) {
return "AAC_ADTS_ERLC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LD) {
return "AAC_ADTS_LD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V2) {
return "AAC_ADTS_HE_V2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ELD) {
return "AAC_ADTS_ELD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_XHE) {
return "AAC_ADTS_XHE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_JOC) {
return "E_AC3_JOC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT_1_0) {
return "MAT_1_0";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_0) {
return "MAT_2_0";
}
if (o == ::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_1) {
return "MAT_2_1";
}
std::string os;
os += toHexString(static_cast<uint32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioFormat o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::FixedChannelCount>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::FixedChannelCount> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_2) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_2)) {
os += (first ? "" : " | ");
os += "FCC_2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_2;
}
if ((o & ::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_8) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_8)) {
os += (first ? "" : " | ");
os += "FCC_8";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_8;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::FixedChannelCount o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_2) {
return "FCC_2";
}
if (o == ::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_8) {
return "FCC_8";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::FixedChannelCount o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioChannelMask>(uint32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioChannelMask> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_POSITION) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_POSITION)) {
os += (first ? "" : " | ");
os += "REPRESENTATION_POSITION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_POSITION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_INDEX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_INDEX)) {
os += (first ? "" : " | ");
os += "REPRESENTATION_INDEX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_INDEX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::NONE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INVALID) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INVALID)) {
os += (first ? "" : " | ");
os += "INVALID";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INVALID;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT)) {
os += (first ? "" : " | ");
os += "OUT_FRONT_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT)) {
os += (first ? "" : " | ");
os += "OUT_FRONT_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_FRONT_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_LOW_FREQUENCY) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_LOW_FREQUENCY)) {
os += (first ? "" : " | ");
os += "OUT_LOW_FREQUENCY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_LOW_FREQUENCY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_LEFT)) {
os += (first ? "" : " | ");
os += "OUT_BACK_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_RIGHT)) {
os += (first ? "" : " | ");
os += "OUT_BACK_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT_OF_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT_OF_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_FRONT_LEFT_OF_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT_OF_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT_OF_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT_OF_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_FRONT_RIGHT_OF_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT_OF_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_BACK_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_LEFT)) {
os += (first ? "" : " | ");
os += "OUT_SIDE_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_RIGHT)) {
os += (first ? "" : " | ");
os += "OUT_SIDE_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_TOP_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_LEFT)) {
os += (first ? "" : " | ");
os += "OUT_TOP_FRONT_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_TOP_FRONT_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_RIGHT)) {
os += (first ? "" : " | ");
os += "OUT_TOP_FRONT_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_LEFT)) {
os += (first ? "" : " | ");
os += "OUT_TOP_BACK_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_CENTER)) {
os += (first ? "" : " | ");
os += "OUT_TOP_BACK_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_RIGHT)) {
os += (first ? "" : " | ");
os += "OUT_TOP_BACK_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_LEFT)) {
os += (first ? "" : " | ");
os += "OUT_TOP_SIDE_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_RIGHT)) {
os += (first ? "" : " | ");
os += "OUT_TOP_SIDE_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_MONO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_MONO)) {
os += (first ? "" : " | ");
os += "OUT_MONO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_MONO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_STEREO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_STEREO)) {
os += (first ? "" : " | ");
os += "OUT_STEREO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_STEREO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1)) {
os += (first ? "" : " | ");
os += "OUT_2POINT1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT0POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT0POINT2)) {
os += (first ? "" : " | ");
os += "OUT_2POINT0POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT0POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1POINT2)) {
os += (first ? "" : " | ");
os += "OUT_2POINT1POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT0POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT0POINT2)) {
os += (first ? "" : " | ");
os += "OUT_3POINT0POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT0POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT1POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT1POINT2)) {
os += (first ? "" : " | ");
os += "OUT_3POINT1POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT1POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD)) {
os += (first ? "" : " | ");
os += "OUT_QUAD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_BACK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_BACK)) {
os += (first ? "" : " | ");
os += "OUT_QUAD_BACK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_BACK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_SIDE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_SIDE)) {
os += (first ? "" : " | ");
os += "OUT_QUAD_SIDE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_SIDE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SURROUND) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SURROUND)) {
os += (first ? "" : " | ");
os += "OUT_SURROUND";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SURROUND;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_PENTA) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_PENTA)) {
os += (first ? "" : " | ");
os += "OUT_PENTA";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_PENTA;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1)) {
os += (first ? "" : " | ");
os += "OUT_5POINT1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_BACK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_BACK)) {
os += (first ? "" : " | ");
os += "OUT_5POINT1_BACK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_BACK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_SIDE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_SIDE)) {
os += (first ? "" : " | ");
os += "OUT_5POINT1_SIDE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_SIDE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT2)) {
os += (first ? "" : " | ");
os += "OUT_5POINT1POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT4) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT4)) {
os += (first ? "" : " | ");
os += "OUT_5POINT1POINT4";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT4;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_6POINT1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_6POINT1)) {
os += (first ? "" : " | ");
os += "OUT_6POINT1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_6POINT1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1)) {
os += (first ? "" : " | ");
os += "OUT_7POINT1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT2)) {
os += (first ? "" : " | ");
os += "OUT_7POINT1POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT4) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT4)) {
os += (first ? "" : " | ");
os += "OUT_7POINT1POINT4";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT4;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT)) {
os += (first ? "" : " | ");
os += "IN_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT)) {
os += (first ? "" : " | ");
os += "IN_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT)) {
os += (first ? "" : " | ");
os += "IN_FRONT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK)) {
os += (first ? "" : " | ");
os += "IN_BACK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT_PROCESSED) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT_PROCESSED)) {
os += (first ? "" : " | ");
os += "IN_LEFT_PROCESSED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT_PROCESSED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT_PROCESSED) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT_PROCESSED)) {
os += (first ? "" : " | ");
os += "IN_RIGHT_PROCESSED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT_PROCESSED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_PROCESSED) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_PROCESSED)) {
os += (first ? "" : " | ");
os += "IN_FRONT_PROCESSED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_PROCESSED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_PROCESSED) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_PROCESSED)) {
os += (first ? "" : " | ");
os += "IN_BACK_PROCESSED";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_PROCESSED;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_PRESSURE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_PRESSURE)) {
os += (first ? "" : " | ");
os += "IN_PRESSURE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_PRESSURE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_X_AXIS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_X_AXIS)) {
os += (first ? "" : " | ");
os += "IN_X_AXIS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_X_AXIS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Y_AXIS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Y_AXIS)) {
os += (first ? "" : " | ");
os += "IN_Y_AXIS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Y_AXIS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Z_AXIS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Z_AXIS)) {
os += (first ? "" : " | ");
os += "IN_Z_AXIS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Z_AXIS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_LEFT)) {
os += (first ? "" : " | ");
os += "IN_BACK_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_RIGHT)) {
os += (first ? "" : " | ");
os += "IN_BACK_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_CENTER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_CENTER)) {
os += (first ? "" : " | ");
os += "IN_CENTER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_CENTER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LOW_FREQUENCY) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LOW_FREQUENCY)) {
os += (first ? "" : " | ");
os += "IN_LOW_FREQUENCY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LOW_FREQUENCY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_LEFT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_LEFT)) {
os += (first ? "" : " | ");
os += "IN_TOP_LEFT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_LEFT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_RIGHT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_RIGHT)) {
os += (first ? "" : " | ");
os += "IN_TOP_RIGHT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_RIGHT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK)) {
os += (first ? "" : " | ");
os += "IN_VOICE_UPLINK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK)) {
os += (first ? "" : " | ");
os += "IN_VOICE_DNLINK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_MONO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_MONO)) {
os += (first ? "" : " | ");
os += "IN_MONO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_MONO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_STEREO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_STEREO)) {
os += (first ? "" : " | ");
os += "IN_STEREO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_STEREO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_BACK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_BACK)) {
os += (first ? "" : " | ");
os += "IN_FRONT_BACK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_BACK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_6) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_6)) {
os += (first ? "" : " | ");
os += "IN_6";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_6;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT0POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT0POINT2)) {
os += (first ? "" : " | ");
os += "IN_2POINT0POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT0POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT1POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT1POINT2)) {
os += (first ? "" : " | ");
os += "IN_2POINT1POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT1POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT0POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT0POINT2)) {
os += (first ? "" : " | ");
os += "IN_3POINT0POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT0POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT1POINT2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT1POINT2)) {
os += (first ? "" : " | ");
os += "IN_3POINT1POINT2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT1POINT2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_5POINT1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_5POINT1)) {
os += (first ? "" : " | ");
os += "IN_5POINT1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_5POINT1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK_MONO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK_MONO)) {
os += (first ? "" : " | ");
os += "IN_VOICE_UPLINK_MONO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK_MONO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK_MONO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK_MONO)) {
os += (first ? "" : " | ");
os += "IN_VOICE_DNLINK_MONO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK_MONO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_CALL_MONO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_CALL_MONO)) {
os += (first ? "" : " | ");
os += "IN_VOICE_CALL_MONO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_CALL_MONO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::COUNT_MAX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::COUNT_MAX)) {
os += (first ? "" : " | ");
os += "COUNT_MAX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::COUNT_MAX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_HDR) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_HDR)) {
os += (first ? "" : " | ");
os += "INDEX_HDR";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_HDR;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_1) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_1)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_1";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_1;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_2) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_2)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_2";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_2;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_3) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_3)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_3";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_3;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_4) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_4)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_4";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_4;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_5) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_5)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_5";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_5;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_6) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_6)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_6";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_6;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_7) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_7)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_7";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_7;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_8) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_8)) {
os += (first ? "" : " | ");
os += "INDEX_MASK_8";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_8;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioChannelMask o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_POSITION) {
return "REPRESENTATION_POSITION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_INDEX) {
return "REPRESENTATION_INDEX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::NONE) {
return "NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INVALID) {
return "INVALID";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT) {
return "OUT_FRONT_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT) {
return "OUT_FRONT_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_CENTER) {
return "OUT_FRONT_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_LOW_FREQUENCY) {
return "OUT_LOW_FREQUENCY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_LEFT) {
return "OUT_BACK_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_RIGHT) {
return "OUT_BACK_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT_OF_CENTER) {
return "OUT_FRONT_LEFT_OF_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT_OF_CENTER) {
return "OUT_FRONT_RIGHT_OF_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_CENTER) {
return "OUT_BACK_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_LEFT) {
return "OUT_SIDE_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_RIGHT) {
return "OUT_SIDE_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_CENTER) {
return "OUT_TOP_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_LEFT) {
return "OUT_TOP_FRONT_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_CENTER) {
return "OUT_TOP_FRONT_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_RIGHT) {
return "OUT_TOP_FRONT_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_LEFT) {
return "OUT_TOP_BACK_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_CENTER) {
return "OUT_TOP_BACK_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_RIGHT) {
return "OUT_TOP_BACK_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_LEFT) {
return "OUT_TOP_SIDE_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_RIGHT) {
return "OUT_TOP_SIDE_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_MONO) {
return "OUT_MONO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_STEREO) {
return "OUT_STEREO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1) {
return "OUT_2POINT1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT0POINT2) {
return "OUT_2POINT0POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1POINT2) {
return "OUT_2POINT1POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT0POINT2) {
return "OUT_3POINT0POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT1POINT2) {
return "OUT_3POINT1POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD) {
return "OUT_QUAD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_BACK) {
return "OUT_QUAD_BACK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_SIDE) {
return "OUT_QUAD_SIDE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SURROUND) {
return "OUT_SURROUND";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_PENTA) {
return "OUT_PENTA";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1) {
return "OUT_5POINT1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_BACK) {
return "OUT_5POINT1_BACK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_SIDE) {
return "OUT_5POINT1_SIDE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT2) {
return "OUT_5POINT1POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT4) {
return "OUT_5POINT1POINT4";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_6POINT1) {
return "OUT_6POINT1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1) {
return "OUT_7POINT1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT2) {
return "OUT_7POINT1POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT4) {
return "OUT_7POINT1POINT4";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT) {
return "IN_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT) {
return "IN_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT) {
return "IN_FRONT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK) {
return "IN_BACK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT_PROCESSED) {
return "IN_LEFT_PROCESSED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT_PROCESSED) {
return "IN_RIGHT_PROCESSED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_PROCESSED) {
return "IN_FRONT_PROCESSED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_PROCESSED) {
return "IN_BACK_PROCESSED";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_PRESSURE) {
return "IN_PRESSURE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_X_AXIS) {
return "IN_X_AXIS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Y_AXIS) {
return "IN_Y_AXIS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Z_AXIS) {
return "IN_Z_AXIS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_LEFT) {
return "IN_BACK_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_RIGHT) {
return "IN_BACK_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_CENTER) {
return "IN_CENTER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LOW_FREQUENCY) {
return "IN_LOW_FREQUENCY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_LEFT) {
return "IN_TOP_LEFT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_RIGHT) {
return "IN_TOP_RIGHT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK) {
return "IN_VOICE_UPLINK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK) {
return "IN_VOICE_DNLINK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_MONO) {
return "IN_MONO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_STEREO) {
return "IN_STEREO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_BACK) {
return "IN_FRONT_BACK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_6) {
return "IN_6";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT0POINT2) {
return "IN_2POINT0POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT1POINT2) {
return "IN_2POINT1POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT0POINT2) {
return "IN_3POINT0POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT1POINT2) {
return "IN_3POINT1POINT2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_5POINT1) {
return "IN_5POINT1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK_MONO) {
return "IN_VOICE_UPLINK_MONO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK_MONO) {
return "IN_VOICE_DNLINK_MONO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_CALL_MONO) {
return "IN_VOICE_CALL_MONO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::COUNT_MAX) {
return "COUNT_MAX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_HDR) {
return "INDEX_HDR";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_1) {
return "INDEX_MASK_1";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_2) {
return "INDEX_MASK_2";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_3) {
return "INDEX_MASK_3";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_4) {
return "INDEX_MASK_4";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_5) {
return "INDEX_MASK_5";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_6) {
return "INDEX_MASK_6";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_7) {
return "INDEX_MASK_7";
}
if (o == ::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_8) {
return "INDEX_MASK_8";
}
std::string os;
os += toHexString(static_cast<uint32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioChannelMask o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioMode>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioMode> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioMode::NORMAL) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioMode::NORMAL)) {
os += (first ? "" : " | ");
os += "NORMAL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioMode::NORMAL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioMode::RINGTONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioMode::RINGTONE)) {
os += (first ? "" : " | ");
os += "RINGTONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioMode::RINGTONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioMode::IN_CALL) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioMode::IN_CALL)) {
os += (first ? "" : " | ");
os += "IN_CALL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioMode::IN_CALL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioMode::IN_COMMUNICATION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioMode::IN_COMMUNICATION)) {
os += (first ? "" : " | ");
os += "IN_COMMUNICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioMode::IN_COMMUNICATION;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioMode o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioMode::NORMAL) {
return "NORMAL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioMode::RINGTONE) {
return "RINGTONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioMode::IN_CALL) {
return "IN_CALL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioMode::IN_COMMUNICATION) {
return "IN_COMMUNICATION";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioMode o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioDevice>(uint32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioDevice> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::NONE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::BIT_IN) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::BIT_IN)) {
os += (first ? "" : " | ");
os += "BIT_IN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::BIT_IN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::BIT_DEFAULT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::BIT_DEFAULT)) {
os += (first ? "" : " | ");
os += "BIT_DEFAULT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::BIT_DEFAULT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_EARPIECE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_EARPIECE)) {
os += (first ? "" : " | ");
os += "OUT_EARPIECE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_EARPIECE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER)) {
os += (first ? "" : " | ");
os += "OUT_SPEAKER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADSET)) {
os += (first ? "" : " | ");
os += "OUT_WIRED_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADPHONE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADPHONE)) {
os += (first ? "" : " | ");
os += "OUT_WIRED_HEADPHONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADPHONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO)) {
os += (first ? "" : " | ");
os += "OUT_BLUETOOTH_SCO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_HEADSET)) {
os += (first ? "" : " | ");
os += "OUT_BLUETOOTH_SCO_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_CARKIT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_CARKIT)) {
os += (first ? "" : " | ");
os += "OUT_BLUETOOTH_SCO_CARKIT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_CARKIT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP)) {
os += (first ? "" : " | ");
os += "OUT_BLUETOOTH_A2DP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_HEADPHONES) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_HEADPHONES)) {
os += (first ? "" : " | ");
os += "OUT_BLUETOOTH_A2DP_HEADPHONES";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_HEADPHONES;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_SPEAKER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_SPEAKER)) {
os += (first ? "" : " | ");
os += "OUT_BLUETOOTH_A2DP_SPEAKER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_SPEAKER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_DIGITAL) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_DIGITAL)) {
os += (first ? "" : " | ");
os += "OUT_AUX_DIGITAL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_DIGITAL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI)) {
os += (first ? "" : " | ");
os += "OUT_HDMI";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_ANLG_DOCK_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_ANLG_DOCK_HEADSET)) {
os += (first ? "" : " | ");
os += "OUT_ANLG_DOCK_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_ANLG_DOCK_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_DGTL_DOCK_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_DGTL_DOCK_HEADSET)) {
os += (first ? "" : " | ");
os += "OUT_DGTL_DOCK_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_DGTL_DOCK_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_ACCESSORY) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_ACCESSORY)) {
os += (first ? "" : " | ");
os += "OUT_USB_ACCESSORY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_ACCESSORY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_DEVICE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_DEVICE)) {
os += (first ? "" : " | ");
os += "OUT_USB_DEVICE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_DEVICE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_REMOTE_SUBMIX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_REMOTE_SUBMIX)) {
os += (first ? "" : " | ");
os += "OUT_REMOTE_SUBMIX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_REMOTE_SUBMIX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_TELEPHONY_TX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_TELEPHONY_TX)) {
os += (first ? "" : " | ");
os += "OUT_TELEPHONY_TX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_TELEPHONY_TX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_LINE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_LINE)) {
os += (first ? "" : " | ");
os += "OUT_LINE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_LINE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI_ARC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI_ARC)) {
os += (first ? "" : " | ");
os += "OUT_HDMI_ARC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI_ARC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPDIF) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPDIF)) {
os += (first ? "" : " | ");
os += "OUT_SPDIF";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPDIF;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_FM) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_FM)) {
os += (first ? "" : " | ");
os += "OUT_FM";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_FM;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_LINE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_LINE)) {
os += (first ? "" : " | ");
os += "OUT_AUX_LINE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_LINE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER_SAFE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER_SAFE)) {
os += (first ? "" : " | ");
os += "OUT_SPEAKER_SAFE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER_SAFE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_IP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_IP)) {
os += (first ? "" : " | ");
os += "OUT_IP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_IP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BUS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_BUS)) {
os += (first ? "" : " | ");
os += "OUT_BUS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BUS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_PROXY) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_PROXY)) {
os += (first ? "" : " | ");
os += "OUT_PROXY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_PROXY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_HEADSET)) {
os += (first ? "" : " | ");
os += "OUT_USB_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HEARING_AID) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_HEARING_AID)) {
os += (first ? "" : " | ");
os += "OUT_HEARING_AID";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HEARING_AID;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_ECHO_CANCELLER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_ECHO_CANCELLER)) {
os += (first ? "" : " | ");
os += "OUT_ECHO_CANCELLER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_ECHO_CANCELLER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::OUT_DEFAULT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::OUT_DEFAULT)) {
os += (first ? "" : " | ");
os += "OUT_DEFAULT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::OUT_DEFAULT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_COMMUNICATION) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_COMMUNICATION)) {
os += (first ? "" : " | ");
os += "IN_COMMUNICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_COMMUNICATION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_AMBIENT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_AMBIENT)) {
os += (first ? "" : " | ");
os += "IN_AMBIENT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_AMBIENT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_BUILTIN_MIC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_BUILTIN_MIC)) {
os += (first ? "" : " | ");
os += "IN_BUILTIN_MIC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_BUILTIN_MIC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_SCO_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_SCO_HEADSET)) {
os += (first ? "" : " | ");
os += "IN_BLUETOOTH_SCO_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_SCO_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_WIRED_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_WIRED_HEADSET)) {
os += (first ? "" : " | ");
os += "IN_WIRED_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_WIRED_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_AUX_DIGITAL) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_AUX_DIGITAL)) {
os += (first ? "" : " | ");
os += "IN_AUX_DIGITAL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_AUX_DIGITAL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_HDMI) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_HDMI)) {
os += (first ? "" : " | ");
os += "IN_HDMI";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_HDMI;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_VOICE_CALL) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_VOICE_CALL)) {
os += (first ? "" : " | ");
os += "IN_VOICE_CALL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_VOICE_CALL;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_TELEPHONY_RX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_TELEPHONY_RX)) {
os += (first ? "" : " | ");
os += "IN_TELEPHONY_RX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_TELEPHONY_RX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_BACK_MIC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_BACK_MIC)) {
os += (first ? "" : " | ");
os += "IN_BACK_MIC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_BACK_MIC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_REMOTE_SUBMIX) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_REMOTE_SUBMIX)) {
os += (first ? "" : " | ");
os += "IN_REMOTE_SUBMIX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_REMOTE_SUBMIX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_ANLG_DOCK_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_ANLG_DOCK_HEADSET)) {
os += (first ? "" : " | ");
os += "IN_ANLG_DOCK_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_ANLG_DOCK_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_DGTL_DOCK_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_DGTL_DOCK_HEADSET)) {
os += (first ? "" : " | ");
os += "IN_DGTL_DOCK_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_DGTL_DOCK_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_ACCESSORY) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_ACCESSORY)) {
os += (first ? "" : " | ");
os += "IN_USB_ACCESSORY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_ACCESSORY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_DEVICE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_DEVICE)) {
os += (first ? "" : " | ");
os += "IN_USB_DEVICE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_DEVICE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_FM_TUNER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_FM_TUNER)) {
os += (first ? "" : " | ");
os += "IN_FM_TUNER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_FM_TUNER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_TV_TUNER) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_TV_TUNER)) {
os += (first ? "" : " | ");
os += "IN_TV_TUNER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_TV_TUNER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_LINE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_LINE)) {
os += (first ? "" : " | ");
os += "IN_LINE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_LINE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_SPDIF) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_SPDIF)) {
os += (first ? "" : " | ");
os += "IN_SPDIF";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_SPDIF;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_A2DP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_A2DP)) {
os += (first ? "" : " | ");
os += "IN_BLUETOOTH_A2DP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_A2DP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_LOOPBACK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_LOOPBACK)) {
os += (first ? "" : " | ");
os += "IN_LOOPBACK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_LOOPBACK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_IP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_IP)) {
os += (first ? "" : " | ");
os += "IN_IP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_IP;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_BUS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_BUS)) {
os += (first ? "" : " | ");
os += "IN_BUS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_BUS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_PROXY) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_PROXY)) {
os += (first ? "" : " | ");
os += "IN_PROXY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_PROXY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_HEADSET) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_HEADSET)) {
os += (first ? "" : " | ");
os += "IN_USB_HEADSET";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_HEADSET;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_BLE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_BLE)) {
os += (first ? "" : " | ");
os += "IN_BLUETOOTH_BLE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_BLE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioDevice::IN_DEFAULT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioDevice::IN_DEFAULT)) {
os += (first ? "" : " | ");
os += "IN_DEFAULT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioDevice::IN_DEFAULT;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioDevice o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::NONE) {
return "NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::BIT_IN) {
return "BIT_IN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::BIT_DEFAULT) {
return "BIT_DEFAULT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_EARPIECE) {
return "OUT_EARPIECE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER) {
return "OUT_SPEAKER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADSET) {
return "OUT_WIRED_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADPHONE) {
return "OUT_WIRED_HEADPHONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO) {
return "OUT_BLUETOOTH_SCO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_HEADSET) {
return "OUT_BLUETOOTH_SCO_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_CARKIT) {
return "OUT_BLUETOOTH_SCO_CARKIT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP) {
return "OUT_BLUETOOTH_A2DP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_HEADPHONES) {
return "OUT_BLUETOOTH_A2DP_HEADPHONES";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_SPEAKER) {
return "OUT_BLUETOOTH_A2DP_SPEAKER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_DIGITAL) {
return "OUT_AUX_DIGITAL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI) {
return "OUT_HDMI";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_ANLG_DOCK_HEADSET) {
return "OUT_ANLG_DOCK_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_DGTL_DOCK_HEADSET) {
return "OUT_DGTL_DOCK_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_ACCESSORY) {
return "OUT_USB_ACCESSORY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_DEVICE) {
return "OUT_USB_DEVICE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_REMOTE_SUBMIX) {
return "OUT_REMOTE_SUBMIX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_TELEPHONY_TX) {
return "OUT_TELEPHONY_TX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_LINE) {
return "OUT_LINE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI_ARC) {
return "OUT_HDMI_ARC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPDIF) {
return "OUT_SPDIF";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_FM) {
return "OUT_FM";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_LINE) {
return "OUT_AUX_LINE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER_SAFE) {
return "OUT_SPEAKER_SAFE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_IP) {
return "OUT_IP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_BUS) {
return "OUT_BUS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_PROXY) {
return "OUT_PROXY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_HEADSET) {
return "OUT_USB_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_HEARING_AID) {
return "OUT_HEARING_AID";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_ECHO_CANCELLER) {
return "OUT_ECHO_CANCELLER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::OUT_DEFAULT) {
return "OUT_DEFAULT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_COMMUNICATION) {
return "IN_COMMUNICATION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_AMBIENT) {
return "IN_AMBIENT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_BUILTIN_MIC) {
return "IN_BUILTIN_MIC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_SCO_HEADSET) {
return "IN_BLUETOOTH_SCO_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_WIRED_HEADSET) {
return "IN_WIRED_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_AUX_DIGITAL) {
return "IN_AUX_DIGITAL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_HDMI) {
return "IN_HDMI";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_VOICE_CALL) {
return "IN_VOICE_CALL";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_TELEPHONY_RX) {
return "IN_TELEPHONY_RX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_BACK_MIC) {
return "IN_BACK_MIC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_REMOTE_SUBMIX) {
return "IN_REMOTE_SUBMIX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_ANLG_DOCK_HEADSET) {
return "IN_ANLG_DOCK_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_DGTL_DOCK_HEADSET) {
return "IN_DGTL_DOCK_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_ACCESSORY) {
return "IN_USB_ACCESSORY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_DEVICE) {
return "IN_USB_DEVICE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_FM_TUNER) {
return "IN_FM_TUNER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_TV_TUNER) {
return "IN_TV_TUNER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_LINE) {
return "IN_LINE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_SPDIF) {
return "IN_SPDIF";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_A2DP) {
return "IN_BLUETOOTH_A2DP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_LOOPBACK) {
return "IN_LOOPBACK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_IP) {
return "IN_IP";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_BUS) {
return "IN_BUS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_PROXY) {
return "IN_PROXY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_HEADSET) {
return "IN_USB_HEADSET";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_BLE) {
return "IN_BLUETOOTH_BLE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioDevice::IN_DEFAULT) {
return "IN_DEFAULT";
}
std::string os;
os += toHexString(static_cast<uint32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioDevice o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioOutputFlag>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioOutputFlag> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT)) {
os += (first ? "" : " | ");
os += "DIRECT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::PRIMARY) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::PRIMARY)) {
os += (first ? "" : " | ");
os += "PRIMARY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::PRIMARY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::FAST) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::FAST)) {
os += (first ? "" : " | ");
os += "FAST";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::FAST;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::DEEP_BUFFER) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::DEEP_BUFFER)) {
os += (first ? "" : " | ");
os += "DEEP_BUFFER";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::DEEP_BUFFER;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::COMPRESS_OFFLOAD) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::COMPRESS_OFFLOAD)) {
os += (first ? "" : " | ");
os += "COMPRESS_OFFLOAD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::COMPRESS_OFFLOAD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::NON_BLOCKING) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::NON_BLOCKING)) {
os += (first ? "" : " | ");
os += "NON_BLOCKING";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::NON_BLOCKING;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::HW_AV_SYNC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::HW_AV_SYNC)) {
os += (first ? "" : " | ");
os += "HW_AV_SYNC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::HW_AV_SYNC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::TTS) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::TTS)) {
os += (first ? "" : " | ");
os += "TTS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::TTS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::RAW) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::RAW)) {
os += (first ? "" : " | ");
os += "RAW";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::RAW;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::SYNC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::SYNC)) {
os += (first ? "" : " | ");
os += "SYNC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::SYNC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::IEC958_NONAUDIO) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::IEC958_NONAUDIO)) {
os += (first ? "" : " | ");
os += "IEC958_NONAUDIO";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::IEC958_NONAUDIO;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT_PCM) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT_PCM)) {
os += (first ? "" : " | ");
os += "DIRECT_PCM";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT_PCM;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::MMAP_NOIRQ) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::MMAP_NOIRQ)) {
os += (first ? "" : " | ");
os += "MMAP_NOIRQ";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::MMAP_NOIRQ;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::VOIP_RX) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::VOIP_RX)) {
os += (first ? "" : " | ");
os += "VOIP_RX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::VOIP_RX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioOutputFlag::INCALL_MUSIC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioOutputFlag::INCALL_MUSIC)) {
os += (first ? "" : " | ");
os += "INCALL_MUSIC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioOutputFlag::INCALL_MUSIC;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioOutputFlag o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::NONE) {
return "NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT) {
return "DIRECT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::PRIMARY) {
return "PRIMARY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::FAST) {
return "FAST";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::DEEP_BUFFER) {
return "DEEP_BUFFER";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::COMPRESS_OFFLOAD) {
return "COMPRESS_OFFLOAD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::NON_BLOCKING) {
return "NON_BLOCKING";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::HW_AV_SYNC) {
return "HW_AV_SYNC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::TTS) {
return "TTS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::RAW) {
return "RAW";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::SYNC) {
return "SYNC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::IEC958_NONAUDIO) {
return "IEC958_NONAUDIO";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT_PCM) {
return "DIRECT_PCM";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::MMAP_NOIRQ) {
return "MMAP_NOIRQ";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::VOIP_RX) {
return "VOIP_RX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioOutputFlag::INCALL_MUSIC) {
return "INCALL_MUSIC";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioOutputFlag o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioInputFlag>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioInputFlag> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::FAST) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::FAST)) {
os += (first ? "" : " | ");
os += "FAST";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::FAST;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::HW_HOTWORD) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::HW_HOTWORD)) {
os += (first ? "" : " | ");
os += "HW_HOTWORD";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::HW_HOTWORD;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::RAW) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::RAW)) {
os += (first ? "" : " | ");
os += "RAW";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::RAW;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::SYNC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::SYNC)) {
os += (first ? "" : " | ");
os += "SYNC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::SYNC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::MMAP_NOIRQ) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::MMAP_NOIRQ)) {
os += (first ? "" : " | ");
os += "MMAP_NOIRQ";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::MMAP_NOIRQ;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::VOIP_TX) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::VOIP_TX)) {
os += (first ? "" : " | ");
os += "VOIP_TX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::VOIP_TX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioInputFlag::HW_AV_SYNC) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioInputFlag::HW_AV_SYNC)) {
os += (first ? "" : " | ");
os += "HW_AV_SYNC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioInputFlag::HW_AV_SYNC;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioInputFlag o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::NONE) {
return "NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::FAST) {
return "FAST";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::HW_HOTWORD) {
return "HW_HOTWORD";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::RAW) {
return "RAW";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::SYNC) {
return "SYNC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::MMAP_NOIRQ) {
return "MMAP_NOIRQ";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::VOIP_TX) {
return "VOIP_TX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioInputFlag::HW_AV_SYNC) {
return "HW_AV_SYNC";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioInputFlag o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioUsage>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioUsage> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::UNKNOWN) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::UNKNOWN)) {
os += (first ? "" : " | ");
os += "UNKNOWN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::UNKNOWN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::MEDIA) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::MEDIA)) {
os += (first ? "" : " | ");
os += "MEDIA";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::MEDIA;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION)) {
os += (first ? "" : " | ");
os += "VOICE_COMMUNICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION_SIGNALLING) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION_SIGNALLING)) {
os += (first ? "" : " | ");
os += "VOICE_COMMUNICATION_SIGNALLING";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION_SIGNALLING;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::ALARM) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::ALARM)) {
os += (first ? "" : " | ");
os += "ALARM";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::ALARM;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION)) {
os += (first ? "" : " | ");
os += "NOTIFICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION_TELEPHONY_RINGTONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION_TELEPHONY_RINGTONE)) {
os += (first ? "" : " | ");
os += "NOTIFICATION_TELEPHONY_RINGTONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION_TELEPHONY_RINGTONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_ACCESSIBILITY) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_ACCESSIBILITY)) {
os += (first ? "" : " | ");
os += "ASSISTANCE_ACCESSIBILITY";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_ACCESSIBILITY;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_NAVIGATION_GUIDANCE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_NAVIGATION_GUIDANCE)) {
os += (first ? "" : " | ");
os += "ASSISTANCE_NAVIGATION_GUIDANCE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_NAVIGATION_GUIDANCE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_SONIFICATION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_SONIFICATION)) {
os += (first ? "" : " | ");
os += "ASSISTANCE_SONIFICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_SONIFICATION;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::GAME) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::GAME)) {
os += (first ? "" : " | ");
os += "GAME";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::GAME;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::VIRTUAL_SOURCE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::VIRTUAL_SOURCE)) {
os += (first ? "" : " | ");
os += "VIRTUAL_SOURCE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::VIRTUAL_SOURCE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANT) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANT)) {
os += (first ? "" : " | ");
os += "ASSISTANT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANT;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioUsage o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::UNKNOWN) {
return "UNKNOWN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::MEDIA) {
return "MEDIA";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION) {
return "VOICE_COMMUNICATION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION_SIGNALLING) {
return "VOICE_COMMUNICATION_SIGNALLING";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::ALARM) {
return "ALARM";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION) {
return "NOTIFICATION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION_TELEPHONY_RINGTONE) {
return "NOTIFICATION_TELEPHONY_RINGTONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_ACCESSIBILITY) {
return "ASSISTANCE_ACCESSIBILITY";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_NAVIGATION_GUIDANCE) {
return "ASSISTANCE_NAVIGATION_GUIDANCE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_SONIFICATION) {
return "ASSISTANCE_SONIFICATION";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::GAME) {
return "GAME";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::VIRTUAL_SOURCE) {
return "VIRTUAL_SOURCE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANT) {
return "ASSISTANT";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioUsage o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioContentType>(uint32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioContentType> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioContentType::UNKNOWN) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioContentType::UNKNOWN)) {
os += (first ? "" : " | ");
os += "UNKNOWN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioContentType::UNKNOWN;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioContentType::SPEECH) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioContentType::SPEECH)) {
os += (first ? "" : " | ");
os += "SPEECH";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioContentType::SPEECH;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioContentType::MUSIC) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioContentType::MUSIC)) {
os += (first ? "" : " | ");
os += "MUSIC";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioContentType::MUSIC;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioContentType::MOVIE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioContentType::MOVIE)) {
os += (first ? "" : " | ");
os += "MOVIE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioContentType::MOVIE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioContentType::SONIFICATION) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioContentType::SONIFICATION)) {
os += (first ? "" : " | ");
os += "SONIFICATION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioContentType::SONIFICATION;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioContentType o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioContentType::UNKNOWN) {
return "UNKNOWN";
}
if (o == ::android::hardware::audio::common::V4_0::AudioContentType::SPEECH) {
return "SPEECH";
}
if (o == ::android::hardware::audio::common::V4_0::AudioContentType::MUSIC) {
return "MUSIC";
}
if (o == ::android::hardware::audio::common::V4_0::AudioContentType::MOVIE) {
return "MOVIE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioContentType::SONIFICATION) {
return "SONIFICATION";
}
std::string os;
os += toHexString(static_cast<uint32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioContentType o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".sampleRateHz = ";
os += ::android::hardware::toString(o.sampleRateHz);
os += ", .channelMask = ";
os += ::android::hardware::audio::common::V4_0::toString<::android::hardware::audio::common::V4_0::AudioChannelMask>(o.channelMask);
os += ", .format = ";
os += ::android::hardware::audio::common::V4_0::toString(o.format);
os += ", .streamType = ";
os += ::android::hardware::audio::common::V4_0::toString(o.streamType);
os += ", .bitRatePerSecond = ";
os += ::android::hardware::toString(o.bitRatePerSecond);
os += ", .durationMicroseconds = ";
os += ::android::hardware::toString(o.durationMicroseconds);
os += ", .hasVideo = ";
os += ::android::hardware::toString(o.hasVideo);
os += ", .isStreaming = ";
os += ::android::hardware::toString(o.isStreaming);
os += ", .bitWidth = ";
os += ::android::hardware::toString(o.bitWidth);
os += ", .bufferSize = ";
os += ::android::hardware::toString(o.bufferSize);
os += ", .usage = ";
os += ::android::hardware::audio::common::V4_0::toString(o.usage);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& lhs, const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& rhs) {
if (lhs.sampleRateHz != rhs.sampleRateHz) {
return false;
}
if (lhs.channelMask != rhs.channelMask) {
return false;
}
if (lhs.format != rhs.format) {
return false;
}
if (lhs.streamType != rhs.streamType) {
return false;
}
if (lhs.bitRatePerSecond != rhs.bitRatePerSecond) {
return false;
}
if (lhs.durationMicroseconds != rhs.durationMicroseconds) {
return false;
}
if (lhs.hasVideo != rhs.hasVideo) {
return false;
}
if (lhs.isStreaming != rhs.isStreaming) {
return false;
}
if (lhs.bitWidth != rhs.bitWidth) {
return false;
}
if (lhs.bufferSize != rhs.bufferSize) {
return false;
}
if (lhs.usage != rhs.usage) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& lhs, const ::android::hardware::audio::common::V4_0::AudioOffloadInfo& rhs){
return !(lhs == rhs);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioConfig& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".sampleRateHz = ";
os += ::android::hardware::toString(o.sampleRateHz);
os += ", .channelMask = ";
os += ::android::hardware::audio::common::V4_0::toString<::android::hardware::audio::common::V4_0::AudioChannelMask>(o.channelMask);
os += ", .format = ";
os += ::android::hardware::audio::common::V4_0::toString(o.format);
os += ", .offloadInfo = ";
os += ::android::hardware::audio::common::V4_0::toString(o.offloadInfo);
os += ", .frameCount = ";
os += ::android::hardware::toString(o.frameCount);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioConfig& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioConfig& rhs) {
if (lhs.sampleRateHz != rhs.sampleRateHz) {
return false;
}
if (lhs.channelMask != rhs.channelMask) {
return false;
}
if (lhs.format != rhs.format) {
return false;
}
if (lhs.offloadInfo != rhs.offloadInfo) {
return false;
}
if (lhs.frameCount != rhs.frameCount) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioConfig& rhs){
return !(lhs == rhs);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioGainMode>(uint32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioGainMode> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioGainMode::JOINT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioGainMode::JOINT)) {
os += (first ? "" : " | ");
os += "JOINT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioGainMode::JOINT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioGainMode::CHANNELS) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioGainMode::CHANNELS)) {
os += (first ? "" : " | ");
os += "CHANNELS";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioGainMode::CHANNELS;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioGainMode::RAMP) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioGainMode::RAMP)) {
os += (first ? "" : " | ");
os += "RAMP";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioGainMode::RAMP;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioGainMode o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioGainMode::JOINT) {
return "JOINT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioGainMode::CHANNELS) {
return "CHANNELS";
}
if (o == ::android::hardware::audio::common::V4_0::AudioGainMode::RAMP) {
return "RAMP";
}
std::string os;
os += toHexString(static_cast<uint32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioGainMode o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioGain& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".mode = ";
os += ::android::hardware::audio::common::V4_0::toString<::android::hardware::audio::common::V4_0::AudioGainMode>(o.mode);
os += ", .channelMask = ";
os += ::android::hardware::audio::common::V4_0::toString<::android::hardware::audio::common::V4_0::AudioChannelMask>(o.channelMask);
os += ", .minValue = ";
os += ::android::hardware::toString(o.minValue);
os += ", .maxValue = ";
os += ::android::hardware::toString(o.maxValue);
os += ", .defaultValue = ";
os += ::android::hardware::toString(o.defaultValue);
os += ", .stepValue = ";
os += ::android::hardware::toString(o.stepValue);
os += ", .minRampMs = ";
os += ::android::hardware::toString(o.minRampMs);
os += ", .maxRampMs = ";
os += ::android::hardware::toString(o.maxRampMs);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioGain& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioGain& lhs, const ::android::hardware::audio::common::V4_0::AudioGain& rhs) {
if (lhs.mode != rhs.mode) {
return false;
}
if (lhs.channelMask != rhs.channelMask) {
return false;
}
if (lhs.minValue != rhs.minValue) {
return false;
}
if (lhs.maxValue != rhs.maxValue) {
return false;
}
if (lhs.defaultValue != rhs.defaultValue) {
return false;
}
if (lhs.stepValue != rhs.stepValue) {
return false;
}
if (lhs.minRampMs != rhs.minRampMs) {
return false;
}
if (lhs.maxRampMs != rhs.maxRampMs) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioGain& lhs, const ::android::hardware::audio::common::V4_0::AudioGain& rhs){
return !(lhs == rhs);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioGainConfig& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".index = ";
os += ::android::hardware::toString(o.index);
os += ", .mode = ";
os += ::android::hardware::audio::common::V4_0::toString(o.mode);
os += ", .channelMask = ";
os += ::android::hardware::audio::common::V4_0::toString(o.channelMask);
os += ", .values = ";
os += ::android::hardware::toString(o.values);
os += ", .rampDurationMs = ";
os += ::android::hardware::toString(o.rampDurationMs);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioGainConfig& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioGainConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioGainConfig& rhs) {
if (lhs.index != rhs.index) {
return false;
}
if (lhs.mode != rhs.mode) {
return false;
}
if (lhs.channelMask != rhs.channelMask) {
return false;
}
if (lhs.values != rhs.values) {
return false;
}
if (lhs.rampDurationMs != rhs.rampDurationMs) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioGainConfig& lhs, const ::android::hardware::audio::common::V4_0::AudioGainConfig& rhs){
return !(lhs == rhs);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioPortRole>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioPortRole> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioPortRole::NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortRole::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortRole::NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortRole::SOURCE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortRole::SOURCE)) {
os += (first ? "" : " | ");
os += "SOURCE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortRole::SOURCE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortRole::SINK) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortRole::SINK)) {
os += (first ? "" : " | ");
os += "SINK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortRole::SINK;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioPortRole o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioPortRole::NONE) {
return "NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortRole::SOURCE) {
return "SOURCE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortRole::SINK) {
return "SINK";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioPortRole o, ::std::ostream* os) {
*os << toString(o);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioPortType>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioPortType> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioPortType::NONE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortType::NONE)) {
os += (first ? "" : " | ");
os += "NONE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortType::NONE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortType::DEVICE) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortType::DEVICE)) {
os += (first ? "" : " | ");
os += "DEVICE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortType::DEVICE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortType::MIX) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortType::MIX)) {
os += (first ? "" : " | ");
os += "MIX";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortType::MIX;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortType::SESSION) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioPortType::SESSION)) {
os += (first ? "" : " | ");
os += "SESSION";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortType::SESSION;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioPortType o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioPortType::NONE) {
return "NONE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortType::DEVICE) {
return "DEVICE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortType::MIX) {
return "MIX";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortType::SESSION) {
return "SESSION";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioPortType o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".hwModule = ";
os += ::android::hardware::toString(o.hwModule);
os += ", .type = ";
os += ::android::hardware::audio::common::V4_0::toString(o.type);
os += ", .address = ";
os += ::android::hardware::toString(o.address);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& rhs) {
if (lhs.hwModule != rhs.hwModule) {
return false;
}
if (lhs.type != rhs.type) {
return false;
}
if (lhs.address != rhs.address) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigDeviceExt& rhs){
return !(lhs == rhs);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".session = ";
os += ::android::hardware::toString(o.session);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& rhs) {
if (lhs.session != rhs.session) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortConfigSessionExt& rhs){
return !(lhs == rhs);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioPortConfigMask>(uint32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioPortConfigMask> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioPortConfigMask::SAMPLE_RATE) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioPortConfigMask::SAMPLE_RATE)) {
os += (first ? "" : " | ");
os += "SAMPLE_RATE";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortConfigMask::SAMPLE_RATE;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortConfigMask::CHANNEL_MASK) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioPortConfigMask::CHANNEL_MASK)) {
os += (first ? "" : " | ");
os += "CHANNEL_MASK";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortConfigMask::CHANNEL_MASK;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortConfigMask::FORMAT) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioPortConfigMask::FORMAT)) {
os += (first ? "" : " | ");
os += "FORMAT";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortConfigMask::FORMAT;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioPortConfigMask::GAIN) == static_cast<uint32_t>(::android::hardware::audio::common::V4_0::AudioPortConfigMask::GAIN)) {
os += (first ? "" : " | ");
os += "GAIN";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioPortConfigMask::GAIN;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioPortConfigMask o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioPortConfigMask::SAMPLE_RATE) {
return "SAMPLE_RATE";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortConfigMask::CHANNEL_MASK) {
return "CHANNEL_MASK";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortConfigMask::FORMAT) {
return "FORMAT";
}
if (o == ::android::hardware::audio::common::V4_0::AudioPortConfigMask::GAIN) {
return "GAIN";
}
std::string os;
os += toHexString(static_cast<uint32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioPortConfigMask o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".stream = ";
os += ::android::hardware::audio::common::V4_0::toString(o.stream);
os += ", .source = ";
os += ::android::hardware::audio::common::V4_0::toString(o.source);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt::UseCase& o, ::std::ostream* os) {
*os << toString(o);
}
// operator== and operator!= are not generated for UseCase
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".hwModule = ";
os += ::android::hardware::toString(o.hwModule);
os += ", .ioHandle = ";
os += ::android::hardware::toString(o.ioHandle);
os += ", .useCase = ";
os += ::android::hardware::audio::common::V4_0::toString(o.useCase);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext::AudioPortConfigMixExt& o, ::std::ostream* os) {
*os << toString(o);
}
// operator== and operator!= are not generated for AudioPortConfigMixExt
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".device = ";
os += ::android::hardware::audio::common::V4_0::toString(o.device);
os += ", .mix = ";
os += ::android::hardware::audio::common::V4_0::toString(o.mix);
os += ", .session = ";
os += ::android::hardware::audio::common::V4_0::toString(o.session);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig::Ext& o, ::std::ostream* os) {
*os << toString(o);
}
// operator== and operator!= are not generated for Ext
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortConfig& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".id = ";
os += ::android::hardware::toString(o.id);
os += ", .configMask = ";
os += ::android::hardware::audio::common::V4_0::toString<::android::hardware::audio::common::V4_0::AudioPortConfigMask>(o.configMask);
os += ", .sampleRateHz = ";
os += ::android::hardware::toString(o.sampleRateHz);
os += ", .channelMask = ";
os += ::android::hardware::audio::common::V4_0::toString<::android::hardware::audio::common::V4_0::AudioChannelMask>(o.channelMask);
os += ", .format = ";
os += ::android::hardware::audio::common::V4_0::toString(o.format);
os += ", .gain = ";
os += ::android::hardware::audio::common::V4_0::toString(o.gain);
os += ", .type = ";
os += ::android::hardware::audio::common::V4_0::toString(o.type);
os += ", .role = ";
os += ::android::hardware::audio::common::V4_0::toString(o.role);
os += ", .ext = ";
os += ::android::hardware::audio::common::V4_0::toString(o.ext);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortConfig& o, ::std::ostream* os) {
*os << toString(o);
}
// operator== and operator!= are not generated for AudioPortConfig
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".hwModule = ";
os += ::android::hardware::toString(o.hwModule);
os += ", .type = ";
os += ::android::hardware::audio::common::V4_0::toString(o.type);
os += ", .address = ";
os += ::android::hardware::toString(o.address);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& rhs) {
if (lhs.hwModule != rhs.hwModule) {
return false;
}
if (lhs.type != rhs.type) {
return false;
}
if (lhs.address != rhs.address) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortDeviceExt& rhs){
return !(lhs == rhs);
}
template<>
inline std::string toString<::android::hardware::audio::common::V4_0::AudioMixLatencyClass>(int32_t o) {
using ::android::hardware::details::toHexString;
std::string os;
::android::hardware::hidl_bitfield<::android::hardware::audio::common::V4_0::AudioMixLatencyClass> flipped = 0;
bool first = true;
if ((o & ::android::hardware::audio::common::V4_0::AudioMixLatencyClass::LOW) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioMixLatencyClass::LOW)) {
os += (first ? "" : " | ");
os += "LOW";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioMixLatencyClass::LOW;
}
if ((o & ::android::hardware::audio::common::V4_0::AudioMixLatencyClass::NORMAL) == static_cast<int32_t>(::android::hardware::audio::common::V4_0::AudioMixLatencyClass::NORMAL)) {
os += (first ? "" : " | ");
os += "NORMAL";
first = false;
flipped |= ::android::hardware::audio::common::V4_0::AudioMixLatencyClass::NORMAL;
}
if (o != flipped) {
os += (first ? "" : " | ");
os += toHexString(o & (~flipped));
}os += " (";
os += toHexString(o);
os += ")";
return os;
}
static inline std::string toString(::android::hardware::audio::common::V4_0::AudioMixLatencyClass o) {
using ::android::hardware::details::toHexString;
if (o == ::android::hardware::audio::common::V4_0::AudioMixLatencyClass::LOW) {
return "LOW";
}
if (o == ::android::hardware::audio::common::V4_0::AudioMixLatencyClass::NORMAL) {
return "NORMAL";
}
std::string os;
os += toHexString(static_cast<int32_t>(o));
return os;
}
static inline void PrintTo(::android::hardware::audio::common::V4_0::AudioMixLatencyClass o, ::std::ostream* os) {
*os << toString(o);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".hwModule = ";
os += ::android::hardware::toString(o.hwModule);
os += ", .ioHandle = ";
os += ::android::hardware::toString(o.ioHandle);
os += ", .latencyClass = ";
os += ::android::hardware::audio::common::V4_0::toString(o.latencyClass);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortMixExt& rhs) {
if (lhs.hwModule != rhs.hwModule) {
return false;
}
if (lhs.ioHandle != rhs.ioHandle) {
return false;
}
if (lhs.latencyClass != rhs.latencyClass) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortMixExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortMixExt& rhs){
return !(lhs == rhs);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".session = ";
os += ::android::hardware::toString(o.session);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& rhs) {
if (lhs.session != rhs.session) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& lhs, const ::android::hardware::audio::common::V4_0::AudioPortSessionExt& rhs){
return !(lhs == rhs);
}
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPort::Ext& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".device = ";
os += ::android::hardware::audio::common::V4_0::toString(o.device);
os += ", .mix = ";
os += ::android::hardware::audio::common::V4_0::toString(o.mix);
os += ", .session = ";
os += ::android::hardware::audio::common::V4_0::toString(o.session);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPort::Ext& o, ::std::ostream* os) {
*os << toString(o);
}
// operator== and operator!= are not generated for Ext
static inline std::string toString(const ::android::hardware::audio::common::V4_0::AudioPort& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".id = ";
os += ::android::hardware::toString(o.id);
os += ", .role = ";
os += ::android::hardware::audio::common::V4_0::toString(o.role);
os += ", .name = ";
os += ::android::hardware::toString(o.name);
os += ", .sampleRates = ";
os += ::android::hardware::toString(o.sampleRates);
os += ", .channelMasks = ";
os += ::android::hardware::toString(o.channelMasks);
os += ", .formats = ";
os += ::android::hardware::toString(o.formats);
os += ", .gains = ";
os += ::android::hardware::toString(o.gains);
os += ", .activeConfig = ";
os += ::android::hardware::audio::common::V4_0::toString(o.activeConfig);
os += ", .type = ";
os += ::android::hardware::audio::common::V4_0::toString(o.type);
os += ", .ext = ";
os += ::android::hardware::audio::common::V4_0::toString(o.ext);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::AudioPort& o, ::std::ostream* os) {
*os << toString(o);
}
// operator== and operator!= are not generated for AudioPort
static inline std::string toString(const ::android::hardware::audio::common::V4_0::ThreadInfo& o) {
using ::android::hardware::toString;
std::string os;
os += "{";
os += ".pid = ";
os += ::android::hardware::toString(o.pid);
os += ", .tid = ";
os += ::android::hardware::toString(o.tid);
os += "}"; return os;
}
static inline void PrintTo(const ::android::hardware::audio::common::V4_0::ThreadInfo& o, ::std::ostream* os) {
*os << toString(o);
}
static inline bool operator==(const ::android::hardware::audio::common::V4_0::ThreadInfo& lhs, const ::android::hardware::audio::common::V4_0::ThreadInfo& rhs) {
if (lhs.pid != rhs.pid) {
return false;
}
if (lhs.tid != rhs.tid) {
return false;
}
return true;
}
static inline bool operator!=(const ::android::hardware::audio::common::V4_0::ThreadInfo& lhs, const ::android::hardware::audio::common::V4_0::ThreadInfo& rhs){
return !(lhs == rhs);
}
} // namespace V4_0
} // namespace common
} // namespace audio
} // namespace hardware
} // namespace android
//
// global type declarations for package
//
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioHandleConsts, 4> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioHandleConsts> = {
::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_IO_HANDLE_NONE,
::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_MODULE_HANDLE_NONE,
::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PORT_HANDLE_NONE,
::android::hardware::audio::common::V4_0::AudioHandleConsts::AUDIO_PATCH_HANDLE_NONE,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioStreamType, 13> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioStreamType> = {
::android::hardware::audio::common::V4_0::AudioStreamType::DEFAULT,
::android::hardware::audio::common::V4_0::AudioStreamType::MIN,
::android::hardware::audio::common::V4_0::AudioStreamType::VOICE_CALL,
::android::hardware::audio::common::V4_0::AudioStreamType::SYSTEM,
::android::hardware::audio::common::V4_0::AudioStreamType::RING,
::android::hardware::audio::common::V4_0::AudioStreamType::MUSIC,
::android::hardware::audio::common::V4_0::AudioStreamType::ALARM,
::android::hardware::audio::common::V4_0::AudioStreamType::NOTIFICATION,
::android::hardware::audio::common::V4_0::AudioStreamType::BLUETOOTH_SCO,
::android::hardware::audio::common::V4_0::AudioStreamType::ENFORCED_AUDIBLE,
::android::hardware::audio::common::V4_0::AudioStreamType::DTMF,
::android::hardware::audio::common::V4_0::AudioStreamType::TTS,
::android::hardware::audio::common::V4_0::AudioStreamType::ACCESSIBILITY,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioSource, 11> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioSource> = {
::android::hardware::audio::common::V4_0::AudioSource::DEFAULT,
::android::hardware::audio::common::V4_0::AudioSource::MIC,
::android::hardware::audio::common::V4_0::AudioSource::VOICE_UPLINK,
::android::hardware::audio::common::V4_0::AudioSource::VOICE_DOWNLINK,
::android::hardware::audio::common::V4_0::AudioSource::VOICE_CALL,
::android::hardware::audio::common::V4_0::AudioSource::CAMCORDER,
::android::hardware::audio::common::V4_0::AudioSource::VOICE_RECOGNITION,
::android::hardware::audio::common::V4_0::AudioSource::VOICE_COMMUNICATION,
::android::hardware::audio::common::V4_0::AudioSource::REMOTE_SUBMIX,
::android::hardware::audio::common::V4_0::AudioSource::UNPROCESSED,
::android::hardware::audio::common::V4_0::AudioSource::FM_TUNER,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioSessionConsts, 4> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioSessionConsts> = {
::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_STAGE,
::android::hardware::audio::common::V4_0::AudioSessionConsts::OUTPUT_MIX,
::android::hardware::audio::common::V4_0::AudioSessionConsts::ALLOCATE,
::android::hardware::audio::common::V4_0::AudioSessionConsts::NONE,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioFormat, 96> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioFormat> = {
::android::hardware::audio::common::V4_0::AudioFormat::INVALID,
::android::hardware::audio::common::V4_0::AudioFormat::DEFAULT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM,
::android::hardware::audio::common::V4_0::AudioFormat::MP3,
::android::hardware::audio::common::V4_0::AudioFormat::AMR_NB,
::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB,
::android::hardware::audio::common::V4_0::AudioFormat::AAC,
::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V1,
::android::hardware::audio::common::V4_0::AudioFormat::HE_AAC_V2,
::android::hardware::audio::common::V4_0::AudioFormat::VORBIS,
::android::hardware::audio::common::V4_0::AudioFormat::OPUS,
::android::hardware::audio::common::V4_0::AudioFormat::AC3,
::android::hardware::audio::common::V4_0::AudioFormat::E_AC3,
::android::hardware::audio::common::V4_0::AudioFormat::DTS,
::android::hardware::audio::common::V4_0::AudioFormat::DTS_HD,
::android::hardware::audio::common::V4_0::AudioFormat::IEC61937,
::android::hardware::audio::common::V4_0::AudioFormat::DOLBY_TRUEHD,
::android::hardware::audio::common::V4_0::AudioFormat::EVRC,
::android::hardware::audio::common::V4_0::AudioFormat::EVRCB,
::android::hardware::audio::common::V4_0::AudioFormat::EVRCWB,
::android::hardware::audio::common::V4_0::AudioFormat::EVRCNW,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADIF,
::android::hardware::audio::common::V4_0::AudioFormat::WMA,
::android::hardware::audio::common::V4_0::AudioFormat::WMA_PRO,
::android::hardware::audio::common::V4_0::AudioFormat::AMR_WB_PLUS,
::android::hardware::audio::common::V4_0::AudioFormat::MP2,
::android::hardware::audio::common::V4_0::AudioFormat::QCELP,
::android::hardware::audio::common::V4_0::AudioFormat::DSD,
::android::hardware::audio::common::V4_0::AudioFormat::FLAC,
::android::hardware::audio::common::V4_0::AudioFormat::ALAC,
::android::hardware::audio::common::V4_0::AudioFormat::APE,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS,
::android::hardware::audio::common::V4_0::AudioFormat::SBC,
::android::hardware::audio::common::V4_0::AudioFormat::APTX,
::android::hardware::audio::common::V4_0::AudioFormat::APTX_HD,
::android::hardware::audio::common::V4_0::AudioFormat::AC4,
::android::hardware::audio::common::V4_0::AudioFormat::LDAC,
::android::hardware::audio::common::V4_0::AudioFormat::MAT,
::android::hardware::audio::common::V4_0::AudioFormat::MAIN_MASK,
::android::hardware::audio::common::V4_0::AudioFormat::SUB_MASK,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_16_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_32_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_8_24_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_FLOAT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_SUB_24_BIT_PACKED,
::android::hardware::audio::common::V4_0::AudioFormat::MP3_SUB_NONE,
::android::hardware::audio::common::V4_0::AudioFormat::AMR_SUB_NONE,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_MAIN,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LC,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SSR,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LTP,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V1,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_SCALABLE,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ERLC,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_LD,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_HE_V2,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_ELD,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SUB_XHE,
::android::hardware::audio::common::V4_0::AudioFormat::VORBIS_SUB_NONE,
::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_SUB_JOC,
::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_1_0,
::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_0,
::android::hardware::audio::common::V4_0::AudioFormat::MAT_SUB_2_1,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_16_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_32_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_8_24_BIT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_FLOAT,
::android::hardware::audio::common::V4_0::AudioFormat::PCM_24_BIT_PACKED,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_MAIN,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_LC,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SSR,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_LTP,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V1,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_SCALABLE,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ERLC,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_LD,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_HE_V2,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ELD,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_XHE,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_MAIN,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LC,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SSR,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LTP,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V1,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_SCALABLE,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ERLC,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_LD,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_HE_V2,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_ELD,
::android::hardware::audio::common::V4_0::AudioFormat::AAC_ADTS_XHE,
::android::hardware::audio::common::V4_0::AudioFormat::E_AC3_JOC,
::android::hardware::audio::common::V4_0::AudioFormat::MAT_1_0,
::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_0,
::android::hardware::audio::common::V4_0::AudioFormat::MAT_2_1,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::FixedChannelCount, 2> hidl_enum_values<::android::hardware::audio::common::V4_0::FixedChannelCount> = {
::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_2,
::android::hardware::audio::common::V4_0::FixedChannelCount::FCC_8,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioChannelMask, 87> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioChannelMask> = {
::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_POSITION,
::android::hardware::audio::common::V4_0::AudioChannelMask::REPRESENTATION_INDEX,
::android::hardware::audio::common::V4_0::AudioChannelMask::NONE,
::android::hardware::audio::common::V4_0::AudioChannelMask::INVALID,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_LOW_FREQUENCY,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_LEFT_OF_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_FRONT_RIGHT_OF_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_BACK_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SIDE_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_FRONT_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_BACK_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_TOP_SIDE_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_MONO,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_STEREO,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT0POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_2POINT1POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT0POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_3POINT1POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_BACK,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_QUAD_SIDE,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_SURROUND,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_PENTA,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_BACK,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1_SIDE,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_5POINT1POINT4,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_6POINT1,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::OUT_7POINT1POINT4,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LEFT_PROCESSED,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_RIGHT_PROCESSED,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_PROCESSED,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_PROCESSED,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_PRESSURE,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_X_AXIS,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Y_AXIS,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_Z_AXIS,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_BACK_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_CENTER,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_LOW_FREQUENCY,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_LEFT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_TOP_RIGHT,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_MONO,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_STEREO,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_FRONT_BACK,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_6,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT0POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_2POINT1POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT0POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_3POINT1POINT2,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_5POINT1,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_UPLINK_MONO,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_DNLINK_MONO,
::android::hardware::audio::common::V4_0::AudioChannelMask::IN_VOICE_CALL_MONO,
::android::hardware::audio::common::V4_0::AudioChannelMask::COUNT_MAX,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_HDR,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_1,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_2,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_3,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_4,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_5,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_6,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_7,
::android::hardware::audio::common::V4_0::AudioChannelMask::INDEX_MASK_8,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioMode, 4> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioMode> = {
::android::hardware::audio::common::V4_0::AudioMode::NORMAL,
::android::hardware::audio::common::V4_0::AudioMode::RINGTONE,
::android::hardware::audio::common::V4_0::AudioMode::IN_CALL,
::android::hardware::audio::common::V4_0::AudioMode::IN_COMMUNICATION,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioDevice, 61> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioDevice> = {
::android::hardware::audio::common::V4_0::AudioDevice::NONE,
::android::hardware::audio::common::V4_0::AudioDevice::BIT_IN,
::android::hardware::audio::common::V4_0::AudioDevice::BIT_DEFAULT,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_EARPIECE,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_WIRED_HEADPHONE,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_SCO_CARKIT,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_HEADPHONES,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BLUETOOTH_A2DP_SPEAKER,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_DIGITAL,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_ANLG_DOCK_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_DGTL_DOCK_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_ACCESSORY,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_DEVICE,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_REMOTE_SUBMIX,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_TELEPHONY_TX,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_LINE,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_HDMI_ARC,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPDIF,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_FM,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_AUX_LINE,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_SPEAKER_SAFE,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_IP,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_BUS,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_PROXY,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_USB_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_HEARING_AID,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_ECHO_CANCELLER,
::android::hardware::audio::common::V4_0::AudioDevice::OUT_DEFAULT,
::android::hardware::audio::common::V4_0::AudioDevice::IN_COMMUNICATION,
::android::hardware::audio::common::V4_0::AudioDevice::IN_AMBIENT,
::android::hardware::audio::common::V4_0::AudioDevice::IN_BUILTIN_MIC,
::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_SCO_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::IN_WIRED_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::IN_AUX_DIGITAL,
::android::hardware::audio::common::V4_0::AudioDevice::IN_HDMI,
::android::hardware::audio::common::V4_0::AudioDevice::IN_VOICE_CALL,
::android::hardware::audio::common::V4_0::AudioDevice::IN_TELEPHONY_RX,
::android::hardware::audio::common::V4_0::AudioDevice::IN_BACK_MIC,
::android::hardware::audio::common::V4_0::AudioDevice::IN_REMOTE_SUBMIX,
::android::hardware::audio::common::V4_0::AudioDevice::IN_ANLG_DOCK_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::IN_DGTL_DOCK_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_ACCESSORY,
::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_DEVICE,
::android::hardware::audio::common::V4_0::AudioDevice::IN_FM_TUNER,
::android::hardware::audio::common::V4_0::AudioDevice::IN_TV_TUNER,
::android::hardware::audio::common::V4_0::AudioDevice::IN_LINE,
::android::hardware::audio::common::V4_0::AudioDevice::IN_SPDIF,
::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_A2DP,
::android::hardware::audio::common::V4_0::AudioDevice::IN_LOOPBACK,
::android::hardware::audio::common::V4_0::AudioDevice::IN_IP,
::android::hardware::audio::common::V4_0::AudioDevice::IN_BUS,
::android::hardware::audio::common::V4_0::AudioDevice::IN_PROXY,
::android::hardware::audio::common::V4_0::AudioDevice::IN_USB_HEADSET,
::android::hardware::audio::common::V4_0::AudioDevice::IN_BLUETOOTH_BLE,
::android::hardware::audio::common::V4_0::AudioDevice::IN_DEFAULT,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioOutputFlag, 16> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioOutputFlag> = {
::android::hardware::audio::common::V4_0::AudioOutputFlag::NONE,
::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT,
::android::hardware::audio::common::V4_0::AudioOutputFlag::PRIMARY,
::android::hardware::audio::common::V4_0::AudioOutputFlag::FAST,
::android::hardware::audio::common::V4_0::AudioOutputFlag::DEEP_BUFFER,
::android::hardware::audio::common::V4_0::AudioOutputFlag::COMPRESS_OFFLOAD,
::android::hardware::audio::common::V4_0::AudioOutputFlag::NON_BLOCKING,
::android::hardware::audio::common::V4_0::AudioOutputFlag::HW_AV_SYNC,
::android::hardware::audio::common::V4_0::AudioOutputFlag::TTS,
::android::hardware::audio::common::V4_0::AudioOutputFlag::RAW,
::android::hardware::audio::common::V4_0::AudioOutputFlag::SYNC,
::android::hardware::audio::common::V4_0::AudioOutputFlag::IEC958_NONAUDIO,
::android::hardware::audio::common::V4_0::AudioOutputFlag::DIRECT_PCM,
::android::hardware::audio::common::V4_0::AudioOutputFlag::MMAP_NOIRQ,
::android::hardware::audio::common::V4_0::AudioOutputFlag::VOIP_RX,
::android::hardware::audio::common::V4_0::AudioOutputFlag::INCALL_MUSIC,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioInputFlag, 8> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioInputFlag> = {
::android::hardware::audio::common::V4_0::AudioInputFlag::NONE,
::android::hardware::audio::common::V4_0::AudioInputFlag::FAST,
::android::hardware::audio::common::V4_0::AudioInputFlag::HW_HOTWORD,
::android::hardware::audio::common::V4_0::AudioInputFlag::RAW,
::android::hardware::audio::common::V4_0::AudioInputFlag::SYNC,
::android::hardware::audio::common::V4_0::AudioInputFlag::MMAP_NOIRQ,
::android::hardware::audio::common::V4_0::AudioInputFlag::VOIP_TX,
::android::hardware::audio::common::V4_0::AudioInputFlag::HW_AV_SYNC,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioUsage, 13> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioUsage> = {
::android::hardware::audio::common::V4_0::AudioUsage::UNKNOWN,
::android::hardware::audio::common::V4_0::AudioUsage::MEDIA,
::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION,
::android::hardware::audio::common::V4_0::AudioUsage::VOICE_COMMUNICATION_SIGNALLING,
::android::hardware::audio::common::V4_0::AudioUsage::ALARM,
::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION,
::android::hardware::audio::common::V4_0::AudioUsage::NOTIFICATION_TELEPHONY_RINGTONE,
::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_ACCESSIBILITY,
::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_NAVIGATION_GUIDANCE,
::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANCE_SONIFICATION,
::android::hardware::audio::common::V4_0::AudioUsage::GAME,
::android::hardware::audio::common::V4_0::AudioUsage::VIRTUAL_SOURCE,
::android::hardware::audio::common::V4_0::AudioUsage::ASSISTANT,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioContentType, 5> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioContentType> = {
::android::hardware::audio::common::V4_0::AudioContentType::UNKNOWN,
::android::hardware::audio::common::V4_0::AudioContentType::SPEECH,
::android::hardware::audio::common::V4_0::AudioContentType::MUSIC,
::android::hardware::audio::common::V4_0::AudioContentType::MOVIE,
::android::hardware::audio::common::V4_0::AudioContentType::SONIFICATION,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioGainMode, 3> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioGainMode> = {
::android::hardware::audio::common::V4_0::AudioGainMode::JOINT,
::android::hardware::audio::common::V4_0::AudioGainMode::CHANNELS,
::android::hardware::audio::common::V4_0::AudioGainMode::RAMP,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioPortRole, 3> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioPortRole> = {
::android::hardware::audio::common::V4_0::AudioPortRole::NONE,
::android::hardware::audio::common::V4_0::AudioPortRole::SOURCE,
::android::hardware::audio::common::V4_0::AudioPortRole::SINK,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioPortType, 4> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioPortType> = {
::android::hardware::audio::common::V4_0::AudioPortType::NONE,
::android::hardware::audio::common::V4_0::AudioPortType::DEVICE,
::android::hardware::audio::common::V4_0::AudioPortType::MIX,
::android::hardware::audio::common::V4_0::AudioPortType::SESSION,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioPortConfigMask, 4> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioPortConfigMask> = {
::android::hardware::audio::common::V4_0::AudioPortConfigMask::SAMPLE_RATE,
::android::hardware::audio::common::V4_0::AudioPortConfigMask::CHANNEL_MASK,
::android::hardware::audio::common::V4_0::AudioPortConfigMask::FORMAT,
::android::hardware::audio::common::V4_0::AudioPortConfigMask::GAIN,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
namespace android {
namespace hardware {
namespace details {
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wc++17-extensions"
template<> inline constexpr std::array<::android::hardware::audio::common::V4_0::AudioMixLatencyClass, 2> hidl_enum_values<::android::hardware::audio::common::V4_0::AudioMixLatencyClass> = {
::android::hardware::audio::common::V4_0::AudioMixLatencyClass::LOW,
::android::hardware::audio::common::V4_0::AudioMixLatencyClass::NORMAL,
};
#pragma clang diagnostic pop
} // namespace details
} // namespace hardware
} // namespace android
#endif // HIDL_GENERATED_ANDROID_HARDWARE_AUDIO_COMMON_V4_0_TYPES_H