Merge "Rename .c files compiled as c++ to .cpp" am: a7651f955f
am: 2d7a2a72dc

Change-Id: I5bf04900b0b60c6a34d7abeee0e05c4e3dee5ce6
diff --git a/src/Android.mk b/src/Android.mk
index 3f59064..dde0f25 100644
--- a/src/Android.mk
+++ b/src/Android.mk
@@ -3,12 +3,11 @@
 include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES :=     \
-        assert.c          \
+        assert.cpp        \
         ut/OpenSLESUT.c   \
         ut/slesutResult.c
 
-LOCAL_C_INCLUDES:= \
-        $(call include-path-for, wilhelm)
+LOCAL_C_INCLUDES:= $(LOCAL_PATH)/../include
 
 LOCAL_CFLAGS += -fvisibility=hidden -UNDEBUG
 LOCAL_CFLAGS += -Wall -Werror
@@ -19,8 +18,7 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_C_INCLUDES:= \
-        $(call include-path-for, wilhelm)
+LOCAL_C_INCLUDES:= $(LOCAL_PATH)/../include
 
 LOCAL_CFLAGS += -Wno-initializer-overrides
 # -Wno-missing-field-initializers
@@ -30,7 +28,7 @@
 LOCAL_CFLAGS += -Wall -Werror
 
 LOCAL_SRC_FILES:=                     \
-        assert.c \
+        assert.cpp \
         MPH_to.c \
         handlers.c
 
@@ -68,19 +66,19 @@
 LOCAL_CFLAGS += -fvisibility=hidden -DLI_API='__attribute__((visibility("default")))'
 
 LOCAL_SRC_FILES:=                     \
-        OpenSLES_IID.c                \
-        assert.c                      \
-        classes.c                     \
-        data.c                        \
-        devices.c                     \
-        entry.c                       \
-        handler_bodies.c              \
-        trace.c                       \
-        locks.c                       \
-        sles.c                        \
-        sl_iid.c                      \
-        sllog.c                       \
-        ThreadPool.c                  \
+        OpenSLES_IID.cpp              \
+        assert.cpp                    \
+        classes.cpp                   \
+        data.cpp                      \
+        devices.cpp                   \
+        entry.cpp                     \
+        handler_bodies.cpp            \
+        trace.cpp                     \
+        locks.cpp                     \
+        sles.cpp                      \
+        sl_iid.cpp                    \
+        sllog.cpp                     \
+        ThreadPool.cpp                \
         android/AudioPlayer_to_android.cpp    \
         android/AudioRecorder_to_android.cpp  \
         android/MediaPlayer_to_android.cpp    \
@@ -97,80 +95,82 @@
         android/android_StreamPlayer.cpp      \
         android/android_Effect.cpp            \
         android/util/AacAdtsExtractor.cpp     \
-        android/channels.c                    \
-        autogen/IID_to_MPH.c                  \
-        objects/C3DGroup.c                    \
-        objects/CAudioPlayer.c                \
-        objects/CAudioRecorder.c              \
-        objects/CEngine.c                     \
-        objects/COutputMix.c                  \
-        objects/CMediaPlayer.c                \
-        itf/IAndroidBufferQueue.c         \
-        itf/IAndroidConfiguration.c       \
+        android/channels.cpp                  \
+        autogen/IID_to_MPH.cpp                \
+        objects/C3DGroup.cpp                  \
+        objects/CAudioPlayer.cpp              \
+        objects/CAudioRecorder.cpp            \
+        objects/CEngine.cpp                   \
+        objects/COutputMix.cpp                \
+        objects/CMediaPlayer.cpp              \
+        itf/IAndroidBufferQueue.cpp       \
+        itf/IAndroidConfiguration.cpp     \
         itf/IAndroidEffect.cpp            \
-        itf/IAndroidEffectCapabilities.c  \
-        itf/IAndroidEffectSend.c          \
-        itf/IAcousticEchoCancellation.c   \
-        itf/IAutomaticGainControl.c       \
-        itf/IBassBoost.c                  \
-        itf/IBufferQueue.c                \
-        itf/IDynamicInterfaceManagement.c \
-        itf/IEffectSend.c                 \
-        itf/IEngine.c                     \
-        itf/IEngineCapabilities.c         \
-        itf/IEnvironmentalReverb.c        \
-        itf/IEqualizer.c                  \
-        itf/IMetadataExtraction.c         \
-        itf/INoiseSuppression.c           \
-        itf/IMuteSolo.c                   \
-        itf/IObject.c                     \
-        itf/IOutputMix.c                  \
-        itf/IPlay.c                       \
-        itf/IPlaybackRate.c               \
-        itf/IPrefetchStatus.c             \
-        itf/IPresetReverb.c               \
-        itf/IRecord.c                     \
-        itf/ISeek.c                       \
+        itf/IAndroidEffectCapabilities.cpp\
+        itf/IAndroidEffectSend.cpp        \
+        itf/IAcousticEchoCancellation.cpp \
+        itf/IAutomaticGainControl.cpp     \
+        itf/IBassBoost.cpp                \
+        itf/IBufferQueue.cpp              \
+        itf/IDynamicInterfaceManagement.cpp\
+        itf/IEffectSend.cpp               \
+        itf/IEngine.cpp                   \
+        itf/IEngineCapabilities.cpp       \
+        itf/IEnvironmentalReverb.cpp      \
+        itf/IEqualizer.cpp                \
+        itf/IMetadataExtraction.cpp       \
+        itf/INoiseSuppression.cpp         \
+        itf/IMuteSolo.cpp                 \
+        itf/IObject.cpp                   \
+        itf/IOutputMix.cpp                \
+        itf/IPlay.cpp                     \
+        itf/IPlaybackRate.cpp             \
+        itf/IPrefetchStatus.cpp           \
+        itf/IPresetReverb.cpp             \
+        itf/IRecord.cpp                   \
+        itf/ISeek.cpp                     \
         itf/IStreamInformation.cpp        \
         itf/IVideoDecoderCapabilities.cpp \
-        itf/IVirtualizer.c                \
-        itf/IVolume.c
+        itf/IVirtualizer.cpp              \
+        itf/IVolume.cpp
 
 EXCLUDE_SRC :=                            \
-        sync.c                            \
-        itf/I3DCommit.c                   \
-        itf/I3DDoppler.c                  \
-        itf/I3DGrouping.c                 \
-        itf/I3DLocation.c                 \
-        itf/I3DMacroscopic.c              \
-        itf/I3DSource.c                   \
-        itf/IAudioDecoderCapabilities.c   \
-        itf/IAudioEncoder.c               \
-        itf/IAudioEncoderCapabilities.c   \
-        itf/IAudioIODeviceCapabilities.c  \
-        itf/IDeviceVolume.c               \
-        itf/IDynamicSource.c              \
-        itf/ILEDArray.c                   \
-        itf/IMIDIMessage.c                \
-        itf/IMIDIMuteSolo.c               \
-        itf/IMIDITempo.c                  \
-        itf/IMIDITime.c                   \
-        itf/IMetadataTraversal.c          \
-        itf/IPitch.c                      \
-        itf/IRatePitch.c                  \
-        itf/IThreadSync.c                 \
-        itf/IVibra.c                      \
-        itf/IVisualization.c
+        sync.cpp                          \
+        itf/I3DCommit.cpp                 \
+        itf/I3DDoppler.cpp                \
+        itf/I3DGrouping.cpp               \
+        itf/I3DLocation.cpp               \
+        itf/I3DMacroscopic.cpp            \
+        itf/I3DSource.cpp                 \
+        itf/IAudioDecoderCapabilities.cpp \
+        itf/IAudioEncoder.cpp             \
+        itf/IAudioEncoderCapabilities.cpp \
+        itf/IAudioIODeviceCapabilities.cpp\
+        itf/IDeviceVolume.cpp             \
+        itf/IDynamicSource.cpp            \
+        itf/ILEDArray.cpp                 \
+        itf/IMIDIMessage.cpp              \
+        itf/IMIDIMuteSolo.cpp             \
+        itf/IMIDITempo.cpp                \
+        itf/IMIDITime.cpp                 \
+        itf/IMetadataTraversal.cpp        \
+        itf/IPitch.cpp                    \
+        itf/IRatePitch.cpp                \
+        itf/IThreadSync.cpp               \
+        itf/IVibra.cpp                    \
+        itf/IVisualization.cpp
 
 LOCAL_C_INCLUDES:=                                                  \
-        $(call include-path-for, wilhelm)                           \
+        $(LOCAL_PATH)/../include                                    \
         frameworks/av/media/libstagefright                        \
         frameworks/av/media/libstagefright/include                \
         frameworks/av/media/libstagefright/http                     \
         frameworks/native/include/media/openmax                     \
         $(call include-path-for, audio-effects)
 
-LOCAL_CFLAGS += -x c++ -std=gnu++11 -Wno-multichar -Wno-invalid-offsetof
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
+
+LOCAL_CFLAGS += -Wno-multichar -Wno-invalid-offsetof
 
 LOCAL_CFLAGS += -Wall -Wextra -Wno-unused-parameter -Werror
 
@@ -202,7 +202,6 @@
 endif
 
 LOCAL_MODULE := libwilhelm
-LOCAL_MODULE_TAGS := optional
 
 ifeq ($(TARGET_BUILD_VARIANT),userdebug)
         LOCAL_CFLAGS += -DUSERDEBUG_BUILD=1
@@ -211,31 +210,28 @@
 include $(BUILD_SHARED_LIBRARY)
 
 include $(CLEAR_VARS)
-LOCAL_SRC_FILES := sl_entry.c sl_iid.c assert.c
+LOCAL_SRC_FILES := sl_entry.cpp sl_iid.cpp assert.cpp
 LOCAL_C_INCLUDES:=                                                  \
-        $(call include-path-for, wilhelm)                           \
         frameworks/av/media/libstagefright                        \
         frameworks/av/media/libstagefright/include                \
         frameworks/native/include/media/openmax
 LOCAL_MODULE := libOpenSLES
-LOCAL_MODULE_TAGS := optional
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(call include-path-for, wilhelm)
-LOCAL_CFLAGS += -x c++ -std=gnu++11 -DLI_API= -fvisibility=hidden -UNDEBUG \
+LOCAL_EXPORT_SHARED_LIBRARY_HEADERS := libwilhelm
+LOCAL_CFLAGS += -DLI_API= -fvisibility=hidden -UNDEBUG \
                 -DSL_API='__attribute__((visibility("default")))'
 LOCAL_CFLAGS += -Wall -Werror
 LOCAL_SHARED_LIBRARIES := libwilhelm liblog
 include $(BUILD_SHARED_LIBRARY)
 
 include $(CLEAR_VARS)
-LOCAL_SRC_FILES := xa_entry.c xa_iid.c assert.c
+LOCAL_SRC_FILES := xa_entry.cpp xa_iid.cpp assert.cpp
 LOCAL_C_INCLUDES:=                                                  \
-        $(call include-path-for, wilhelm)                           \
         frameworks/av/media/libstagefright                        \
         frameworks/av/media/libstagefright/include                \
         frameworks/native/include/media/openmax
 LOCAL_MODULE := libOpenMAXAL
-LOCAL_MODULE_TAGS := optional
-LOCAL_CFLAGS += -x c++ -std=gnu++11 -DLI_API= -fvisibility=hidden -UNDEBUG \
+LOCAL_EXPORT_SHARED_LIBRARY_HEADERS := libwilhelm
+LOCAL_CFLAGS += -DLI_API= -fvisibility=hidden -UNDEBUG \
                 -DXA_API='__attribute__((visibility("default")))'
 LOCAL_CFLAGS += -Wall -Werror
 LOCAL_SHARED_LIBRARIES := libwilhelm liblog
diff --git a/src/OpenSLES_IID.c b/src/OpenSLES_IID.cpp
similarity index 100%
rename from src/OpenSLES_IID.c
rename to src/OpenSLES_IID.cpp
diff --git a/src/ThreadPool.c b/src/ThreadPool.cpp
similarity index 100%
rename from src/ThreadPool.c
rename to src/ThreadPool.cpp
diff --git a/src/android/channels.c b/src/android/channels.cpp
similarity index 100%
rename from src/android/channels.c
rename to src/android/channels.cpp
diff --git a/src/assert.c b/src/assert.cpp
similarity index 100%
rename from src/assert.c
rename to src/assert.cpp
diff --git a/src/autogen/IID_to_MPH.c b/src/autogen/IID_to_MPH.cpp
similarity index 100%
rename from src/autogen/IID_to_MPH.c
rename to src/autogen/IID_to_MPH.cpp
diff --git a/src/classes.c b/src/classes.cpp
similarity index 100%
rename from src/classes.c
rename to src/classes.cpp
diff --git a/src/data.c b/src/data.cpp
similarity index 100%
rename from src/data.c
rename to src/data.cpp
diff --git a/src/desktop/SDL.c b/src/desktop/SDL.cpp
similarity index 100%
rename from src/desktop/SDL.c
rename to src/desktop/SDL.cpp
diff --git a/src/desktop/SndFile.c b/src/desktop/SndFile.cpp
similarity index 100%
rename from src/desktop/SndFile.c
rename to src/desktop/SndFile.cpp
diff --git a/src/devices.c b/src/devices.cpp
similarity index 100%
rename from src/devices.c
rename to src/devices.cpp
diff --git a/src/entry.c b/src/entry.cpp
similarity index 100%
rename from src/entry.c
rename to src/entry.cpp
diff --git a/src/handler_bodies.c b/src/handler_bodies.cpp
similarity index 100%
rename from src/handler_bodies.c
rename to src/handler_bodies.cpp
diff --git a/src/interfaces.c b/src/interfaces.cpp
similarity index 100%
rename from src/interfaces.c
rename to src/interfaces.cpp
diff --git a/src/itf/I3DCommit.c b/src/itf/I3DCommit.cpp
similarity index 100%
rename from src/itf/I3DCommit.c
rename to src/itf/I3DCommit.cpp
diff --git a/src/itf/I3DDoppler.c b/src/itf/I3DDoppler.cpp
similarity index 100%
rename from src/itf/I3DDoppler.c
rename to src/itf/I3DDoppler.cpp
diff --git a/src/itf/I3DGrouping.c b/src/itf/I3DGrouping.cpp
similarity index 100%
rename from src/itf/I3DGrouping.c
rename to src/itf/I3DGrouping.cpp
diff --git a/src/itf/I3DLocation.c b/src/itf/I3DLocation.cpp
similarity index 100%
rename from src/itf/I3DLocation.c
rename to src/itf/I3DLocation.cpp
diff --git a/src/itf/I3DMacroscopic.c b/src/itf/I3DMacroscopic.cpp
similarity index 100%
rename from src/itf/I3DMacroscopic.c
rename to src/itf/I3DMacroscopic.cpp
diff --git a/src/itf/I3DSource.c b/src/itf/I3DSource.cpp
similarity index 100%
rename from src/itf/I3DSource.c
rename to src/itf/I3DSource.cpp
diff --git a/src/itf/IAcousticEchoCancellation.c b/src/itf/IAcousticEchoCancellation.cpp
similarity index 100%
rename from src/itf/IAcousticEchoCancellation.c
rename to src/itf/IAcousticEchoCancellation.cpp
diff --git a/src/itf/IAndroidBufferQueue.c b/src/itf/IAndroidBufferQueue.cpp
similarity index 100%
rename from src/itf/IAndroidBufferQueue.c
rename to src/itf/IAndroidBufferQueue.cpp
diff --git a/src/itf/IAndroidConfiguration.c b/src/itf/IAndroidConfiguration.cpp
similarity index 100%
rename from src/itf/IAndroidConfiguration.c
rename to src/itf/IAndroidConfiguration.cpp
diff --git a/src/itf/IAndroidEffectCapabilities.c b/src/itf/IAndroidEffectCapabilities.cpp
similarity index 100%
rename from src/itf/IAndroidEffectCapabilities.c
rename to src/itf/IAndroidEffectCapabilities.cpp
diff --git a/src/itf/IAndroidEffectSend.c b/src/itf/IAndroidEffectSend.cpp
similarity index 100%
rename from src/itf/IAndroidEffectSend.c
rename to src/itf/IAndroidEffectSend.cpp
diff --git a/src/itf/IAudioDecoderCapabilities.c b/src/itf/IAudioDecoderCapabilities.cpp
similarity index 100%
rename from src/itf/IAudioDecoderCapabilities.c
rename to src/itf/IAudioDecoderCapabilities.cpp
diff --git a/src/itf/IAudioEncoder.c b/src/itf/IAudioEncoder.cpp
similarity index 100%
rename from src/itf/IAudioEncoder.c
rename to src/itf/IAudioEncoder.cpp
diff --git a/src/itf/IAudioEncoderCapabilities.c b/src/itf/IAudioEncoderCapabilities.cpp
similarity index 100%
rename from src/itf/IAudioEncoderCapabilities.c
rename to src/itf/IAudioEncoderCapabilities.cpp
diff --git a/src/itf/IAudioIODeviceCapabilities.c b/src/itf/IAudioIODeviceCapabilities.cpp
similarity index 100%
rename from src/itf/IAudioIODeviceCapabilities.c
rename to src/itf/IAudioIODeviceCapabilities.cpp
diff --git a/src/itf/IAutomaticGainControl.c b/src/itf/IAutomaticGainControl.cpp
similarity index 100%
rename from src/itf/IAutomaticGainControl.c
rename to src/itf/IAutomaticGainControl.cpp
diff --git a/src/itf/IBassBoost.c b/src/itf/IBassBoost.cpp
similarity index 100%
rename from src/itf/IBassBoost.c
rename to src/itf/IBassBoost.cpp
diff --git a/src/itf/IBufferQueue.c b/src/itf/IBufferQueue.cpp
similarity index 100%
rename from src/itf/IBufferQueue.c
rename to src/itf/IBufferQueue.cpp
diff --git a/src/itf/IDeviceVolume.c b/src/itf/IDeviceVolume.cpp
similarity index 100%
rename from src/itf/IDeviceVolume.c
rename to src/itf/IDeviceVolume.cpp
diff --git a/src/itf/IDynamicInterfaceManagement.c b/src/itf/IDynamicInterfaceManagement.cpp
similarity index 100%
rename from src/itf/IDynamicInterfaceManagement.c
rename to src/itf/IDynamicInterfaceManagement.cpp
diff --git a/src/itf/IDynamicSource.c b/src/itf/IDynamicSource.cpp
similarity index 100%
rename from src/itf/IDynamicSource.c
rename to src/itf/IDynamicSource.cpp
diff --git a/src/itf/IEffectSend.c b/src/itf/IEffectSend.cpp
similarity index 100%
rename from src/itf/IEffectSend.c
rename to src/itf/IEffectSend.cpp
diff --git a/src/itf/IEngine.c b/src/itf/IEngine.cpp
similarity index 100%
rename from src/itf/IEngine.c
rename to src/itf/IEngine.cpp
diff --git a/src/itf/IEngineCapabilities.c b/src/itf/IEngineCapabilities.cpp
similarity index 100%
rename from src/itf/IEngineCapabilities.c
rename to src/itf/IEngineCapabilities.cpp
diff --git a/src/itf/IEnvironmentalReverb.c b/src/itf/IEnvironmentalReverb.cpp
similarity index 100%
rename from src/itf/IEnvironmentalReverb.c
rename to src/itf/IEnvironmentalReverb.cpp
diff --git a/src/itf/IEqualizer.c b/src/itf/IEqualizer.cpp
similarity index 100%
rename from src/itf/IEqualizer.c
rename to src/itf/IEqualizer.cpp
diff --git a/src/itf/ILEDArray.c b/src/itf/ILEDArray.cpp
similarity index 100%
rename from src/itf/ILEDArray.c
rename to src/itf/ILEDArray.cpp
diff --git a/src/itf/IMIDIMessage.c b/src/itf/IMIDIMessage.cpp
similarity index 100%
rename from src/itf/IMIDIMessage.c
rename to src/itf/IMIDIMessage.cpp
diff --git a/src/itf/IMIDIMuteSolo.c b/src/itf/IMIDIMuteSolo.cpp
similarity index 100%
rename from src/itf/IMIDIMuteSolo.c
rename to src/itf/IMIDIMuteSolo.cpp
diff --git a/src/itf/IMIDITempo.c b/src/itf/IMIDITempo.cpp
similarity index 100%
rename from src/itf/IMIDITempo.c
rename to src/itf/IMIDITempo.cpp
diff --git a/src/itf/IMIDITime.c b/src/itf/IMIDITime.cpp
similarity index 100%
rename from src/itf/IMIDITime.c
rename to src/itf/IMIDITime.cpp
diff --git a/src/itf/IMetadataExtraction.c b/src/itf/IMetadataExtraction.cpp
similarity index 100%
rename from src/itf/IMetadataExtraction.c
rename to src/itf/IMetadataExtraction.cpp
diff --git a/src/itf/IMetadataTraversal.c b/src/itf/IMetadataTraversal.cpp
similarity index 100%
rename from src/itf/IMetadataTraversal.c
rename to src/itf/IMetadataTraversal.cpp
diff --git a/src/itf/IMuteSolo.c b/src/itf/IMuteSolo.cpp
similarity index 100%
rename from src/itf/IMuteSolo.c
rename to src/itf/IMuteSolo.cpp
diff --git a/src/itf/INoiseSuppression.c b/src/itf/INoiseSuppression.cpp
similarity index 100%
rename from src/itf/INoiseSuppression.c
rename to src/itf/INoiseSuppression.cpp
diff --git a/src/itf/IObject.c b/src/itf/IObject.cpp
similarity index 100%
rename from src/itf/IObject.c
rename to src/itf/IObject.cpp
diff --git a/src/itf/IOutputMix.c b/src/itf/IOutputMix.cpp
similarity index 100%
rename from src/itf/IOutputMix.c
rename to src/itf/IOutputMix.cpp
diff --git a/src/itf/IOutputMixExt.c b/src/itf/IOutputMixExt.cpp
similarity index 100%
rename from src/itf/IOutputMixExt.c
rename to src/itf/IOutputMixExt.cpp
diff --git a/src/itf/IPitch.c b/src/itf/IPitch.cpp
similarity index 100%
rename from src/itf/IPitch.c
rename to src/itf/IPitch.cpp
diff --git a/src/itf/IPlay.c b/src/itf/IPlay.cpp
similarity index 100%
rename from src/itf/IPlay.c
rename to src/itf/IPlay.cpp
diff --git a/src/itf/IPlaybackRate.c b/src/itf/IPlaybackRate.cpp
similarity index 100%
rename from src/itf/IPlaybackRate.c
rename to src/itf/IPlaybackRate.cpp
diff --git a/src/itf/IPrefetchStatus.c b/src/itf/IPrefetchStatus.cpp
similarity index 100%
rename from src/itf/IPrefetchStatus.c
rename to src/itf/IPrefetchStatus.cpp
diff --git a/src/itf/IPresetReverb.c b/src/itf/IPresetReverb.cpp
similarity index 100%
rename from src/itf/IPresetReverb.c
rename to src/itf/IPresetReverb.cpp
diff --git a/src/itf/IRatePitch.c b/src/itf/IRatePitch.cpp
similarity index 100%
rename from src/itf/IRatePitch.c
rename to src/itf/IRatePitch.cpp
diff --git a/src/itf/IRecord.c b/src/itf/IRecord.cpp
similarity index 100%
rename from src/itf/IRecord.c
rename to src/itf/IRecord.cpp
diff --git a/src/itf/ISeek.c b/src/itf/ISeek.cpp
similarity index 100%
rename from src/itf/ISeek.c
rename to src/itf/ISeek.cpp
diff --git a/src/itf/IStreamInformation.c b/src/itf/IStreamInformation.c
deleted file mode 100644
index 582bc2a..0000000
--- a/src/itf/IStreamInformation.c
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
- * Copyright (C) 2011 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.
- */
-
-/* StreamInformation implementation */
-
-#include "sles_allinclusive.h"
-
-static XAresult IStreamInformation_QueryMediaContainerInformation( XAStreamInformationItf self,
-        XAMediaContainerInformation * info /* [out] */)
-{
-    XA_ENTER_INTERFACE
-
-    if (NULL == info) {
-        result = XA_RESULT_PARAMETER_INVALID;
-        XA_LEAVE_INTERFACE
-    }
-
-#ifdef ANDROID
-    IStreamInformation *thiz = (IStreamInformation *) self;
-    interface_lock_shared(thiz);
-    // always storing container info at index 0, as per spec
-    *info = thiz->mStreamInfoTable.itemAt(0).containerInfo;
-    interface_unlock_shared(thiz);
-    // even though the pointer to the media container info is returned, the values aren't set
-    //  for the actual container in this version, they are simply initialized to defaults
-    //  (see IStreamInformation_init)
-    result = XA_RESULT_SUCCESS;
-#else
-    SL_LOGE("QueryMediaContainerInformation is unsupported");
-    memset(info, 0, sizeof(XAMediaContainerInformation));
-    result = XA_RESULT_FEATURE_UNSUPPORTED;
-#endif
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static XAresult IStreamInformation_QueryStreamType( XAStreamInformationItf self,
-        XAuint32 streamIndex, /* [in] */
-        XAuint32 *domain)     /* [out] */
-{
-    XA_ENTER_INTERFACE
-
-    if (NULL == domain) {
-        result = XA_RESULT_PARAMETER_INVALID;
-        XA_LEAVE_INTERFACE;
-    }
-
-#ifndef ANDROID
-    *domain = XA_DOMAINTYPE_UNKNOWN;
-#else
-    if (0 == streamIndex) {
-        // stream 0 is reserved for the container
-        result = XA_RESULT_PARAMETER_INVALID;
-        *domain = XA_DOMAINTYPE_UNKNOWN;
-    } else {
-        IStreamInformation *thiz = (IStreamInformation *) self;
-
-        interface_lock_shared(thiz);
-
-        XAuint32 nbStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
-        // streams in the container are numbered 1..nbStreams
-        if (streamIndex <= nbStreams) {
-            result = XA_RESULT_SUCCESS;
-            *domain = thiz->mStreamInfoTable.itemAt(streamIndex).domain;
-        } else {
-            SL_LOGE("Querying stream type for stream %d, only %d streams available",
-                    streamIndex, nbStreams);
-            result = XA_RESULT_PARAMETER_INVALID;
-        }
-
-        interface_unlock_shared(thiz);
-    }
-#endif
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static XAresult IStreamInformation_QueryStreamInformation( XAStreamInformationItf self,
-        XAuint32 streamIndex, /* [in] */
-        void * info)          /* [out] */
-{
-    XA_ENTER_INTERFACE
-
-    if (NULL == info) {
-        result = XA_RESULT_PARAMETER_INVALID;
-    } else {
-
-#ifndef ANDROID
-        result = XA_RESULT_FEATURE_UNSUPPORTED;
-#else
-
-        IStreamInformation *thiz = (IStreamInformation *) self;
-
-        interface_lock_shared(thiz);
-
-        XAuint32 nbStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
-        // stream 0 is the container, and other streams in the container are numbered 1..nbStreams
-        if (streamIndex <= nbStreams) {
-            result = XA_RESULT_SUCCESS;
-            const StreamInfo& streamInfo = thiz->mStreamInfoTable.itemAt((size_t)streamIndex);
-
-            switch (streamInfo.domain) {
-            case XA_DOMAINTYPE_CONTAINER:
-                *(XAMediaContainerInformation *)info = streamInfo.containerInfo;
-                break;
-            case XA_DOMAINTYPE_AUDIO:
-                *(XAAudioStreamInformation *)info = streamInfo.audioInfo;
-                break;
-            case XA_DOMAINTYPE_VIDEO:
-                *(XAVideoStreamInformation *)info = streamInfo.videoInfo;
-                break;
-            case XA_DOMAINTYPE_IMAGE:
-                *(XAImageStreamInformation *)info = streamInfo.imageInfo;
-                break;
-            case XA_DOMAINTYPE_TIMEDTEXT:
-                *(XATimedTextStreamInformation *)info = streamInfo.textInfo;
-                break;
-            case XA_DOMAINTYPE_MIDI:
-                *(XAMIDIStreamInformation *)info = streamInfo.midiInfo;
-                break;
-            case XA_DOMAINTYPE_VENDOR:
-                *(XAVendorStreamInformation *)info = streamInfo.vendorInfo;
-                break;
-            default:
-                SL_LOGE("StreamInformation::QueryStreamInformation index %u has "
-                        "unknown domain %u", streamIndex, streamInfo.domain);
-                result = XA_RESULT_INTERNAL_ERROR;
-                break;
-            }
-
-        } else {
-            SL_LOGE("Querying stream type for stream %d, only %d streams available",
-                    streamIndex, nbStreams);
-            result = XA_RESULT_PARAMETER_INVALID;
-        }
-
-        interface_unlock_shared(thiz);
-#endif
-
-    }
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static XAresult IStreamInformation_QueryStreamName( XAStreamInformationItf self,
-        XAuint32 streamIndex, /* [in] */
-        XAuint16 * pNameSize, /* [in/out] */
-        XAchar * pName)       /* [out] */
-{
-    XA_ENTER_INTERFACE
-
-    if (NULL == pNameSize || streamIndex == 0) {
-        result = XA_RESULT_PARAMETER_INVALID;
-    } else {
-#ifdef ANDROID
-        IStreamInformation *thiz = (IStreamInformation *) self;
-        interface_lock_shared(thiz);
-
-        XAuint32 nbStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
-        // streams in the container are numbered 1..nbStreams
-        if (streamIndex <= nbStreams) {
-            char streamName[16];        // large enough for the fixed format in next line
-            snprintf(streamName, sizeof(streamName), "stream%u", streamIndex);
-            size_t actualNameLength = strlen(streamName);
-            if (NULL == pName) {
-                // application is querying the name length in order to allocate a buffer
-                result = XA_RESULT_SUCCESS;
-            } else {
-                SLuint16 availableNameLength = *pNameSize;
-                if (actualNameLength > availableNameLength) {
-                    memcpy(pName, streamName, availableNameLength);
-                    result = XA_RESULT_BUFFER_INSUFFICIENT;
-                } else if (actualNameLength == availableNameLength) {
-                    memcpy(pName, streamName, availableNameLength);
-                    result = XA_RESULT_SUCCESS;
-                } else { // actualNameLength < availableNameLength
-                    memcpy(pName, streamName, actualNameLength + 1);
-                    result = XA_RESULT_SUCCESS;
-                }
-            }
-            *pNameSize = actualNameLength;
-        } else {
-            result = XA_RESULT_PARAMETER_INVALID;
-        }
-
-        interface_unlock_shared(thiz);
-#else
-        SL_LOGE("unsupported XAStreamInformationItf function");
-        result = XA_RESULT_FEATURE_UNSUPPORTED;
-#endif
-    }
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static XAresult IStreamInformation_RegisterStreamChangeCallback( XAStreamInformationItf self,
-        xaStreamEventChangeCallback callback, /* [in] */
-        void * pContext)                      /* [in] */
-{
-    XA_ENTER_INTERFACE
-
-    IStreamInformation *thiz = (IStreamInformation *) self;
-
-    interface_lock_exclusive(thiz);
-
-    thiz->mCallback = callback;
-    thiz->mContext = pContext;
-    result = SL_RESULT_SUCCESS;
-
-    interface_unlock_exclusive(thiz);
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static XAresult IStreamInformation_QueryActiveStreams( XAStreamInformationItf self,
-        XAuint32 *numStreams,      /* [in/out] */
-        XAboolean *activeStreams)  /* [out] */
-{
-    XA_ENTER_INTERFACE
-
-    if (NULL == numStreams) {
-        result = XA_RESULT_PARAMETER_INVALID;
-        XA_LEAVE_INTERFACE;
-    }
-
-#ifdef ANDROID
-    IStreamInformation *thiz = (IStreamInformation *) self;
-    interface_lock_shared(thiz);
-
-    result = XA_RESULT_SUCCESS;
-    *numStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
-    // FIXME not setting activeStreams
-
-    interface_unlock_shared(thiz);
-#else
-    result = SL_RESULT_FEATURE_UNSUPPORTED;
-#endif
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static XAresult IStreamInformation_SetActiveStream( XAStreamInformationItf self,
-        XAuint32   streamNum, /* [in] */
-        XAboolean  active,    /* [in] */
-        XAboolean  commitNow) /* [in] */
-{
-    XA_ENTER_INTERFACE
-
-    SL_LOGE("unsupported XAStreamInformationItf function");
-    result = XA_RESULT_FEATURE_UNSUPPORTED;
-
-    XA_LEAVE_INTERFACE
-}
-
-
-static const struct XAStreamInformationItf_ IStreamInformation_Itf = {
-    IStreamInformation_QueryMediaContainerInformation,
-    IStreamInformation_QueryStreamType,
-    IStreamInformation_QueryStreamInformation,
-    IStreamInformation_QueryStreamName,
-    IStreamInformation_RegisterStreamChangeCallback,
-    IStreamInformation_QueryActiveStreams,
-    IStreamInformation_SetActiveStream
-};
-
-
-void IStreamInformation_init(void *self)
-{
-    SL_LOGV("IStreamInformation_init\n");
-    IStreamInformation *thiz = (IStreamInformation *) self;
-    thiz->mItf = &IStreamInformation_Itf;
-
-    thiz->mCallback = NULL;
-    thiz->mContext = NULL;
-
-    for (int i=0 ; i < NB_SUPPORTED_STREAMS ; i++) {
-        thiz->mActiveStreams[i] = XA_BOOLEAN_FALSE;
-    }
-
-#ifdef ANDROID
-    // placement new constructor for C++ field within C struct
-    (void) new (&thiz->mStreamInfoTable) android::Vector<StreamInfo>();
-    // initialize container info
-    StreamInfo contInf;
-    contInf.domain = XA_DOMAINTYPE_CONTAINER;
-    contInf.containerInfo.containerType = XA_CONTAINERTYPE_UNSPECIFIED;
-    contInf.containerInfo.mediaDuration = XA_TIME_UNKNOWN;
-    // FIXME shouldn't this be 1 ?
-    contInf.containerInfo.numStreams = 0;
-    // always storing container info at index 0, as per spec: here, the table was still empty
-    thiz->mStreamInfoTable.add(contInf);
-#endif
-}
-
-
-void IStreamInformation_deinit(void *self) {
-#ifdef ANDROID
-    IStreamInformation *thiz = (IStreamInformation *) self;
-    // explicit destructor
-    thiz->mStreamInfoTable.~Vector<StreamInfo>();
-#endif
-}
diff --git a/src/itf/IStreamInformation.cpp b/src/itf/IStreamInformation.cpp
index 2141533..582bc2a 100644
--- a/src/itf/IStreamInformation.cpp
+++ b/src/itf/IStreamInformation.cpp
@@ -14,5 +14,308 @@
  * limitations under the License.
  */
 
-// Force compilation of code as C++
-#include "IStreamInformation.c"
+/* StreamInformation implementation */
+
+#include "sles_allinclusive.h"
+
+static XAresult IStreamInformation_QueryMediaContainerInformation( XAStreamInformationItf self,
+        XAMediaContainerInformation * info /* [out] */)
+{
+    XA_ENTER_INTERFACE
+
+    if (NULL == info) {
+        result = XA_RESULT_PARAMETER_INVALID;
+        XA_LEAVE_INTERFACE
+    }
+
+#ifdef ANDROID
+    IStreamInformation *thiz = (IStreamInformation *) self;
+    interface_lock_shared(thiz);
+    // always storing container info at index 0, as per spec
+    *info = thiz->mStreamInfoTable.itemAt(0).containerInfo;
+    interface_unlock_shared(thiz);
+    // even though the pointer to the media container info is returned, the values aren't set
+    //  for the actual container in this version, they are simply initialized to defaults
+    //  (see IStreamInformation_init)
+    result = XA_RESULT_SUCCESS;
+#else
+    SL_LOGE("QueryMediaContainerInformation is unsupported");
+    memset(info, 0, sizeof(XAMediaContainerInformation));
+    result = XA_RESULT_FEATURE_UNSUPPORTED;
+#endif
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static XAresult IStreamInformation_QueryStreamType( XAStreamInformationItf self,
+        XAuint32 streamIndex, /* [in] */
+        XAuint32 *domain)     /* [out] */
+{
+    XA_ENTER_INTERFACE
+
+    if (NULL == domain) {
+        result = XA_RESULT_PARAMETER_INVALID;
+        XA_LEAVE_INTERFACE;
+    }
+
+#ifndef ANDROID
+    *domain = XA_DOMAINTYPE_UNKNOWN;
+#else
+    if (0 == streamIndex) {
+        // stream 0 is reserved for the container
+        result = XA_RESULT_PARAMETER_INVALID;
+        *domain = XA_DOMAINTYPE_UNKNOWN;
+    } else {
+        IStreamInformation *thiz = (IStreamInformation *) self;
+
+        interface_lock_shared(thiz);
+
+        XAuint32 nbStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
+        // streams in the container are numbered 1..nbStreams
+        if (streamIndex <= nbStreams) {
+            result = XA_RESULT_SUCCESS;
+            *domain = thiz->mStreamInfoTable.itemAt(streamIndex).domain;
+        } else {
+            SL_LOGE("Querying stream type for stream %d, only %d streams available",
+                    streamIndex, nbStreams);
+            result = XA_RESULT_PARAMETER_INVALID;
+        }
+
+        interface_unlock_shared(thiz);
+    }
+#endif
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static XAresult IStreamInformation_QueryStreamInformation( XAStreamInformationItf self,
+        XAuint32 streamIndex, /* [in] */
+        void * info)          /* [out] */
+{
+    XA_ENTER_INTERFACE
+
+    if (NULL == info) {
+        result = XA_RESULT_PARAMETER_INVALID;
+    } else {
+
+#ifndef ANDROID
+        result = XA_RESULT_FEATURE_UNSUPPORTED;
+#else
+
+        IStreamInformation *thiz = (IStreamInformation *) self;
+
+        interface_lock_shared(thiz);
+
+        XAuint32 nbStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
+        // stream 0 is the container, and other streams in the container are numbered 1..nbStreams
+        if (streamIndex <= nbStreams) {
+            result = XA_RESULT_SUCCESS;
+            const StreamInfo& streamInfo = thiz->mStreamInfoTable.itemAt((size_t)streamIndex);
+
+            switch (streamInfo.domain) {
+            case XA_DOMAINTYPE_CONTAINER:
+                *(XAMediaContainerInformation *)info = streamInfo.containerInfo;
+                break;
+            case XA_DOMAINTYPE_AUDIO:
+                *(XAAudioStreamInformation *)info = streamInfo.audioInfo;
+                break;
+            case XA_DOMAINTYPE_VIDEO:
+                *(XAVideoStreamInformation *)info = streamInfo.videoInfo;
+                break;
+            case XA_DOMAINTYPE_IMAGE:
+                *(XAImageStreamInformation *)info = streamInfo.imageInfo;
+                break;
+            case XA_DOMAINTYPE_TIMEDTEXT:
+                *(XATimedTextStreamInformation *)info = streamInfo.textInfo;
+                break;
+            case XA_DOMAINTYPE_MIDI:
+                *(XAMIDIStreamInformation *)info = streamInfo.midiInfo;
+                break;
+            case XA_DOMAINTYPE_VENDOR:
+                *(XAVendorStreamInformation *)info = streamInfo.vendorInfo;
+                break;
+            default:
+                SL_LOGE("StreamInformation::QueryStreamInformation index %u has "
+                        "unknown domain %u", streamIndex, streamInfo.domain);
+                result = XA_RESULT_INTERNAL_ERROR;
+                break;
+            }
+
+        } else {
+            SL_LOGE("Querying stream type for stream %d, only %d streams available",
+                    streamIndex, nbStreams);
+            result = XA_RESULT_PARAMETER_INVALID;
+        }
+
+        interface_unlock_shared(thiz);
+#endif
+
+    }
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static XAresult IStreamInformation_QueryStreamName( XAStreamInformationItf self,
+        XAuint32 streamIndex, /* [in] */
+        XAuint16 * pNameSize, /* [in/out] */
+        XAchar * pName)       /* [out] */
+{
+    XA_ENTER_INTERFACE
+
+    if (NULL == pNameSize || streamIndex == 0) {
+        result = XA_RESULT_PARAMETER_INVALID;
+    } else {
+#ifdef ANDROID
+        IStreamInformation *thiz = (IStreamInformation *) self;
+        interface_lock_shared(thiz);
+
+        XAuint32 nbStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
+        // streams in the container are numbered 1..nbStreams
+        if (streamIndex <= nbStreams) {
+            char streamName[16];        // large enough for the fixed format in next line
+            snprintf(streamName, sizeof(streamName), "stream%u", streamIndex);
+            size_t actualNameLength = strlen(streamName);
+            if (NULL == pName) {
+                // application is querying the name length in order to allocate a buffer
+                result = XA_RESULT_SUCCESS;
+            } else {
+                SLuint16 availableNameLength = *pNameSize;
+                if (actualNameLength > availableNameLength) {
+                    memcpy(pName, streamName, availableNameLength);
+                    result = XA_RESULT_BUFFER_INSUFFICIENT;
+                } else if (actualNameLength == availableNameLength) {
+                    memcpy(pName, streamName, availableNameLength);
+                    result = XA_RESULT_SUCCESS;
+                } else { // actualNameLength < availableNameLength
+                    memcpy(pName, streamName, actualNameLength + 1);
+                    result = XA_RESULT_SUCCESS;
+                }
+            }
+            *pNameSize = actualNameLength;
+        } else {
+            result = XA_RESULT_PARAMETER_INVALID;
+        }
+
+        interface_unlock_shared(thiz);
+#else
+        SL_LOGE("unsupported XAStreamInformationItf function");
+        result = XA_RESULT_FEATURE_UNSUPPORTED;
+#endif
+    }
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static XAresult IStreamInformation_RegisterStreamChangeCallback( XAStreamInformationItf self,
+        xaStreamEventChangeCallback callback, /* [in] */
+        void * pContext)                      /* [in] */
+{
+    XA_ENTER_INTERFACE
+
+    IStreamInformation *thiz = (IStreamInformation *) self;
+
+    interface_lock_exclusive(thiz);
+
+    thiz->mCallback = callback;
+    thiz->mContext = pContext;
+    result = SL_RESULT_SUCCESS;
+
+    interface_unlock_exclusive(thiz);
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static XAresult IStreamInformation_QueryActiveStreams( XAStreamInformationItf self,
+        XAuint32 *numStreams,      /* [in/out] */
+        XAboolean *activeStreams)  /* [out] */
+{
+    XA_ENTER_INTERFACE
+
+    if (NULL == numStreams) {
+        result = XA_RESULT_PARAMETER_INVALID;
+        XA_LEAVE_INTERFACE;
+    }
+
+#ifdef ANDROID
+    IStreamInformation *thiz = (IStreamInformation *) self;
+    interface_lock_shared(thiz);
+
+    result = XA_RESULT_SUCCESS;
+    *numStreams = thiz->mStreamInfoTable.itemAt(0).containerInfo.numStreams;
+    // FIXME not setting activeStreams
+
+    interface_unlock_shared(thiz);
+#else
+    result = SL_RESULT_FEATURE_UNSUPPORTED;
+#endif
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static XAresult IStreamInformation_SetActiveStream( XAStreamInformationItf self,
+        XAuint32   streamNum, /* [in] */
+        XAboolean  active,    /* [in] */
+        XAboolean  commitNow) /* [in] */
+{
+    XA_ENTER_INTERFACE
+
+    SL_LOGE("unsupported XAStreamInformationItf function");
+    result = XA_RESULT_FEATURE_UNSUPPORTED;
+
+    XA_LEAVE_INTERFACE
+}
+
+
+static const struct XAStreamInformationItf_ IStreamInformation_Itf = {
+    IStreamInformation_QueryMediaContainerInformation,
+    IStreamInformation_QueryStreamType,
+    IStreamInformation_QueryStreamInformation,
+    IStreamInformation_QueryStreamName,
+    IStreamInformation_RegisterStreamChangeCallback,
+    IStreamInformation_QueryActiveStreams,
+    IStreamInformation_SetActiveStream
+};
+
+
+void IStreamInformation_init(void *self)
+{
+    SL_LOGV("IStreamInformation_init\n");
+    IStreamInformation *thiz = (IStreamInformation *) self;
+    thiz->mItf = &IStreamInformation_Itf;
+
+    thiz->mCallback = NULL;
+    thiz->mContext = NULL;
+
+    for (int i=0 ; i < NB_SUPPORTED_STREAMS ; i++) {
+        thiz->mActiveStreams[i] = XA_BOOLEAN_FALSE;
+    }
+
+#ifdef ANDROID
+    // placement new constructor for C++ field within C struct
+    (void) new (&thiz->mStreamInfoTable) android::Vector<StreamInfo>();
+    // initialize container info
+    StreamInfo contInf;
+    contInf.domain = XA_DOMAINTYPE_CONTAINER;
+    contInf.containerInfo.containerType = XA_CONTAINERTYPE_UNSPECIFIED;
+    contInf.containerInfo.mediaDuration = XA_TIME_UNKNOWN;
+    // FIXME shouldn't this be 1 ?
+    contInf.containerInfo.numStreams = 0;
+    // always storing container info at index 0, as per spec: here, the table was still empty
+    thiz->mStreamInfoTable.add(contInf);
+#endif
+}
+
+
+void IStreamInformation_deinit(void *self) {
+#ifdef ANDROID
+    IStreamInformation *thiz = (IStreamInformation *) self;
+    // explicit destructor
+    thiz->mStreamInfoTable.~Vector<StreamInfo>();
+#endif
+}
diff --git a/src/itf/IThreadSync.c b/src/itf/IThreadSync.cpp
similarity index 100%
rename from src/itf/IThreadSync.c
rename to src/itf/IThreadSync.cpp
diff --git a/src/itf/IVibra.c b/src/itf/IVibra.cpp
similarity index 100%
rename from src/itf/IVibra.c
rename to src/itf/IVibra.cpp
diff --git a/src/itf/IVirtualizer.c b/src/itf/IVirtualizer.cpp
similarity index 100%
rename from src/itf/IVirtualizer.c
rename to src/itf/IVirtualizer.cpp
diff --git a/src/itf/IVisualization.c b/src/itf/IVisualization.cpp
similarity index 100%
rename from src/itf/IVisualization.c
rename to src/itf/IVisualization.cpp
diff --git a/src/itf/IVolume.c b/src/itf/IVolume.cpp
similarity index 100%
rename from src/itf/IVolume.c
rename to src/itf/IVolume.cpp
diff --git a/src/locks.c b/src/locks.cpp
similarity index 100%
rename from src/locks.c
rename to src/locks.cpp
diff --git a/src/objects/C3DGroup.c b/src/objects/C3DGroup.cpp
similarity index 100%
rename from src/objects/C3DGroup.c
rename to src/objects/C3DGroup.cpp
diff --git a/src/objects/CAudioPlayer.c b/src/objects/CAudioPlayer.cpp
similarity index 100%
rename from src/objects/CAudioPlayer.c
rename to src/objects/CAudioPlayer.cpp
diff --git a/src/objects/CAudioRecorder.c b/src/objects/CAudioRecorder.cpp
similarity index 100%
rename from src/objects/CAudioRecorder.c
rename to src/objects/CAudioRecorder.cpp
diff --git a/src/objects/CEngine.c b/src/objects/CEngine.cpp
similarity index 100%
rename from src/objects/CEngine.c
rename to src/objects/CEngine.cpp
diff --git a/src/objects/CMediaPlayer.c b/src/objects/CMediaPlayer.cpp
similarity index 100%
rename from src/objects/CMediaPlayer.c
rename to src/objects/CMediaPlayer.cpp
diff --git a/src/objects/COutputMix.c b/src/objects/COutputMix.cpp
similarity index 100%
rename from src/objects/COutputMix.c
rename to src/objects/COutputMix.cpp
diff --git a/src/sl_entry.c b/src/sl_entry.cpp
similarity index 100%
rename from src/sl_entry.c
rename to src/sl_entry.cpp
diff --git a/src/sl_iid.c b/src/sl_iid.cpp
similarity index 100%
rename from src/sl_iid.c
rename to src/sl_iid.cpp
diff --git a/src/sles.c b/src/sles.cpp
similarity index 100%
rename from src/sles.c
rename to src/sles.cpp
diff --git a/src/sllog.c b/src/sllog.cpp
similarity index 100%
rename from src/sllog.c
rename to src/sllog.cpp
diff --git a/src/sync.c b/src/sync.cpp
similarity index 100%
rename from src/sync.c
rename to src/sync.cpp
diff --git a/src/trace.c b/src/trace.cpp
similarity index 100%
rename from src/trace.c
rename to src/trace.cpp
diff --git a/src/xa_entry.c b/src/xa_entry.cpp
similarity index 100%
rename from src/xa_entry.c
rename to src/xa_entry.cpp
diff --git a/src/xa_iid.c b/src/xa_iid.cpp
similarity index 100%
rename from src/xa_iid.c
rename to src/xa_iid.cpp
diff --git a/tests/Android.mk b/tests/Android.mk
index 2072cf4..2552f71 100644
--- a/tests/Android.mk
+++ b/tests/Android.mk
@@ -6,7 +6,6 @@
 LOCAL_SHARED_LIBRARIES := \
     libOpenSLES \
 
-LOCAL_C_INCLUDES := $(call include-path-for, wilhelm)
 LOCAL_SRC_FILES := mimeUri_test.cpp
 LOCAL_MODULE := libopenslestests
 LOCAL_MODULE_TAGS := tests
diff --git a/tests/examples/Android.mk b/tests/examples/Android.mk
index 5fa486c..171a55b 100644
--- a/tests/examples/Android.mk
+++ b/tests/examples/Android.mk
@@ -7,7 +7,6 @@
 LOCAL_MODULE_TAGS := tests
 
 LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm) \
 	$(call include-path-for, audio-utils)
 
 LOCAL_SRC_FILES:= \
@@ -36,9 +35,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestPlayFdPath.cpp
 
@@ -62,7 +58,6 @@
 LOCAL_MODULE_TAGS := tests
 
 LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm) \
 	$(call include-path-for, audio-utils)
 
 LOCAL_SRC_FILES:= \
@@ -93,9 +88,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestSawtoothBufferQueue.cpp
 
@@ -119,9 +111,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestEqFdPath.cpp
 
@@ -144,9 +133,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestEqOutputPath.cpp
 
@@ -169,9 +155,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestBassBoostPath.cpp
 
@@ -194,9 +177,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestVirtualizerPath.cpp
 
@@ -219,9 +199,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestEffectCapabilities.cpp
 
@@ -244,9 +221,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestSendToPresetReverb.cpp
 
@@ -269,9 +243,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestDecodeToBuffQueue.cpp
 
@@ -295,9 +266,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	slesTestDecodeAac.cpp
 
@@ -326,9 +294,6 @@
 
 LOCAL_MODULE_TAGS := tests
 
-LOCAL_C_INCLUDES:= \
-	$(call include-path-for, wilhelm)
-
 LOCAL_SRC_FILES:= \
 	xaVideoDecoderCapabilities.cpp