Had to back out Kota's last change for C++ because it broke C.
In ALmixer, the extra underscore changed all these which broke the compile.

  SWIGTYPE_p_ALmixer_PlaybackFinishedCallbackContainer->clientdata = &_ALmixer_PlaybackFinishedCallbackContainer_clientData;
  SWIGTYPE__p_ALmixer_PlaybackFinishedCallbackContainer->clientdata = &_ALmixer_PlaybackFinishedCallbackContainer_clientData;

  SWIGTYPE_p_ALmixer_version->clientdata = &_ALmixer_version_clientData;
  SWIGTYPE__p_ALmixer_version->clientdata = &_ALmixer_version_clientData;

  SWIGTYPE_p_ALmixer_Data->clientdata = &_ALmixer_Data_clientData;
  SWIGTYPE__p_ALmixer_Data->clientdata = &_ALmixer_Data_clientData;

  SWIGTYPE_p_ALmixer_AudioInfo->clientdata = &_ALmixer_AudioInfo_clientData;
  SWIGTYPE__p_ALmixer_AudioInfo->clientdata = &_ALmixer_AudioInfo_clientData;