data.h revision cafa51fdd8b3f29ebaa0682070100825a9cce2a8
1cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten/* 2cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * Copyright (C) 2010 The Android Open Source Project 3cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * 4cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * Licensed under the Apache License, Version 2.0 (the "License"); 5cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * you may not use this file except in compliance with the License. 6cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * You may obtain a copy of the License at 7cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * 8cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * http://www.apache.org/licenses/LICENSE-2.0 9cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * 10cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * Unless required by applicable law or agreed to in writing, software 11cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * distributed under the License is distributed on an "AS IS" BASIS, 12cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * See the License for the specific language governing permissions and 14cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten * limitations under the License. 15cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten */ 16cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten 17cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten/* Our own merged version of SLDataSource and SLDataSink */ 18cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten 19cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kastentypedef union { 20cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLuint32 mLocatorType; 21cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_Address mAddress; 22cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_BufferQueue mBufferQueue; 23cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_IODevice mIODevice; 24cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_MIDIBufferQueue mMIDIBufferQueue; 25cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_OutputMix mOutputMix; 26cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_URI mURI; 27cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten#ifdef ANDROID 28cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_AndroidFD mFD; 29cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataLocator_AndroidBufferQueue mBQ; 30cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten#endif 31cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten} DataLocator; 32cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten 33cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kastentypedef union { 34cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLuint32 mFormatType; 35cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataFormat_PCM mPCM; 36cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataFormat_MIME mMIME; 37cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten} DataFormat; 38cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten 39cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kastentypedef struct { 40cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten union { 41cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataSource mSource; 42cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten SLDataSink mSink; 43cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten struct { 44cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten DataLocator *pLocator; 45cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten DataFormat *pFormat; 46cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten } mNeutral; 47cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten } u; 48cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten DataLocator mLocator; 49cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten DataFormat mFormat; 50cafa51fdd8b3f29ebaa0682070100825a9cce2a8Glenn Kasten} DataLocatorFormat; 51