| /* |
| * Copyright (C) 2010 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| // Map minimal perfect hash of an interface ID to its name |
| |
| #include <assert.h> |
| #include <string.h> |
| #include "MPH.h" |
| |
| const char * const interface_names[MPH_MAX] = { |
| |
| // OpenSL ES 1.0.1 interfaces |
| "3DCOMMIT", |
| "3DDOPPLER", |
| "3DGROUPING", |
| "3DLOCATION", |
| "3DMACROSCOPIC", |
| "3DSOURCE", |
| "AUDIODECODERCAPABILITIES", |
| "AUDIOENCODER", |
| "AUDIOENCODERCAPABILITIES", |
| "AUDIOIODEVICECAPABILITIES", |
| "BASSBOOST", |
| "BUFFERQUEUE", |
| "DEVICEVOLUME", |
| "DYNAMICINTERFACEMANAGEMENT", |
| "DYNAMICSOURCE", |
| "EFFECTSEND", |
| "ENGINE", |
| "ENGINECAPABILITIES", |
| "ENVIRONMENTALREVERB", |
| "EQUALIZER", |
| "LED", |
| "METADATAEXTRACTION", |
| "METADATATRAVERSAL", |
| "MIDIMESSAGE", |
| "MIDIMUTESOLO", |
| "MIDITEMPO", |
| "MIDITIME", |
| "MUTESOLO", |
| "NULL", |
| "OBJECT", |
| "OUTPUTMIX", |
| "PITCH", |
| "PLAY", |
| "PLAYBACKRATE", |
| "PREFETCHSTATUS", |
| "PRESETREVERB", |
| "RATEPITCH", |
| "RECORD", |
| "SEEK", |
| "THREADSYNC", |
| "VIBRA", |
| "VIRTUALIZER", |
| "VISUALIZATION", |
| "VOLUME", |
| |
| // Wilhelm desktop extended interfaces |
| "OUTPUTMIXEXT", |
| |
| // Android API level 9 extended interfaces |
| "ANDROIDEFFECT", |
| "ANDROIDEFFECTCAPABILITIES", |
| "ANDROIDEFFECTSEND", |
| "ANDROIDCONFIGURATION", |
| "ANDROIDSIMPLEBUFFERQUEUE", |
| |
| // Android API level 12 extended interfaces |
| "ANDROIDBUFFERQUEUESOURCE", |
| |
| // OpenMAX AL 1.0.1 interfaces |
| "XAAUDIODECODERCAPABILITIES", |
| "XAAUDIOENCODER", |
| "XAAUDIOENCODERCAPABILITIES", |
| "XAAUDIOIODEVICECAPABILITIES", |
| "XACAMERA", |
| "XACAMERACAPABILITIES", |
| "XACONFIGEXTENSION", |
| "XADEVICEVOLUME", |
| "XADYNAMICINTERFACEMANAGEMENT", |
| "XADYNAMICSOURCE", |
| "XAENGINE", |
| "XAEQUALIZER", |
| "XAIMAGECONTROLS", |
| "XAIMAGEDECODERCAPABILITIES", |
| "XAIMAGEEFFECTS", |
| "XAIMAGEENCODER", |
| "XAIMAGEENCODERCAPABILITIES", |
| "XALED", |
| "XAMETADATAEXTRACTION", |
| "XAMETADATAINSERTION", |
| "XAMETADATATRAVERSAL", |
| // "XANULL", |
| "XAOBJECT", |
| "XAOUTPUTMIX", |
| "XAPLAY", |
| "XAPLAYBACKRATE", |
| "XAPREFETCHSTATUS", |
| "XARADIO", |
| "XARDS", |
| "XARECORD", |
| "XASEEK", |
| "XASNAPSHOT", |
| "XASTREAMINFORMATION", |
| "XATHREADSYNC", |
| "XAVIBRA", |
| "XAVIDEODECODERCAPABILITIES", |
| "XAVIDEOENCODER", |
| "XAVIDEOENCODERCAPABILITIES", |
| "XAVIDEOPOSTPROCESSING", |
| "XAVOLUME", |
| |
| }; |
| |
| |
| /** Convert an MPH value to an MPH identifier */ |
| |
| void MPH_to_MPH_string(unsigned MPH, char buffer[40]) |
| { |
| assert(MPH_MAX > MPH); |
| const char *infix; |
| infix = ""; |
| strcpy(buffer, "MPH"); |
| strcpy(&buffer[3], infix); |
| strcat(buffer, "_"); |
| strcat(buffer, interface_names[MPH]); |
| } |