adjust missing NO_PACKING and MODPLUG_NO_FILESAVE ifdefs:#14
adjust missing NO_PACKING and MODPLUG_NO_FILESAVE ifdefs:#14sezero wants to merge 2 commits intoKonstanty:masterfrom sezero:szo7
Conversation
CSoundFile::PackSample() and CSoundFile::CanPackSample() are only used when writing samples and only when NO_PACKING is not defined. sample write, in turn, is only available when MODPLUG_NO_FILESAVE is not defined. therefore, wrap them with MODPLUG_NO_PACKING and NO_FILESAVE ifdefs in sndfile.h, and move the MODPLUG_NO_PACKING ifdef in sndfile.cpp to cover PackSample() and CanPackSample() too. This doesn't affect the C-only interface, however CSoundFile class in the C++ interface is changed, therefore MODPLUG_LIBRARY_VERSION in configure.ac would _probably_ need changing before a release.
|
Currently I don't like the idea of changing the interface for no "good" reason. The features before/after are the same. |
…AVE isn't defined. GetBestSaveFormat and GetSaveFormats are only meaningful when MODPLUG_NO_FILESAVE isn't defined.
|
Any code that has to do with NO_PACKING should be removed anyway - There's no reason to still support writing ModPlug-style ADPCM sample hacks into files these days. |
I agree, but he doesn't want to change the api unless there are new features. Apart form this, I disabled the midi and wav formats loading in my fork |
|
Yes, the API shouldn't be changed (libmodplug did this before when increasing the minor version and that is a very bad thing to do), but at least the code for this could be removed, so that it's impossible to create ADPCM-compressed samples. |
|
This PR is stale. Closing. |
- disable wav formats handling: SDL_mixer has its own code for it. - disable midi formats handling: SDL_mixer has timidity or native midi for it. - disable experimental (possibly broken) file save support: not used, ever. - don't export cplusplus interface from shared libs. SDL_mixer doesn't use it. - disable mmcmp unpacking. disable broken pp20 unpacking. - merge Konstanty/libmodplug#36 (fix PSM loader overwrites const data) - merge Konstanty/libmodplug#39 (case-sensitive STM signature checks) - merge Konstanty/libmodplug#40 (big-endian-friendly MDL track length read) - merge Konstanty/libmodplug#24 (make some stuff static) - merge Konstanty/libmodplug#14 (NO_PACKING and MODPLUG_NO_FILESAVE ifdefs) - merge Konstanty/libmodplug#32 (replace setenv) - merge Konstanty/libmodplug#41 (timidity paths update)
- disable wav formats handling: SDL_mixer has its own code for it. - disable midi formats handling: SDL_mixer has timidity or native midi for it. - disable experimental (possibly broken) file save support: not used, ever. - don't export cplusplus interface from shared libs. SDL_mixer doesn't use it. - disable mmcmp unpacking. disable broken pp20 unpacking. - merge Konstanty/libmodplug#36 (fix PSM loader overwrites const data) - merge Konstanty/libmodplug#39 (case-sensitive STM signature checks) - merge Konstanty/libmodplug#40 (big-endian-friendly MDL track length read) - merge Konstanty/libmodplug#24 (make some stuff static) - merge Konstanty/libmodplug#14 (NO_PACKING and MODPLUG_NO_FILESAVE ifdefs) - merge Konstanty/libmodplug#32 (replace setenv) - merge Konstanty/libmodplug#41 (timidity paths update)
- disable wav formats handling: SDL_mixer has its own code for it. - disable midi formats handling: SDL_mixer has timidity or native midi for it. - disable experimental (possibly broken) file save support: not used, ever. - don't export cplusplus interface from shared libs. SDL_mixer doesn't use it. - disable mmcmp unpacking. disable broken pp20 unpacking. - merge Konstanty/libmodplug#36 (fix PSM loader overwrites const data) - merge Konstanty/libmodplug#39 (case-sensitive STM signature checks) - merge Konstanty/libmodplug#40 (big-endian-friendly MDL track length read) - merge Konstanty/libmodplug#24 (make some stuff static) - merge Konstanty/libmodplug#14 (NO_PACKING and MODPLUG_NO_FILESAVE ifdefs) - merge Konstanty/libmodplug#32 (replace setenv) - merge Konstanty/libmodplug#41 (timidity paths update)
CSoundFile::PackSample() and CSoundFile::CanPackSample() are only
used when writing samples and only when NO_PACKING is not defined.
sample write, in turn, is only available when MODPLUG_NO_FILESAVE
is not defined. therefore, wrap them with MODPLUG_NO_PACKING and
NO_FILESAVE ifdefs in sndfile.h, and move the MODPLUG_NO_PACKING
ifdef in sndfile.cpp to cover PackSample() and CanPackSample() too.
This doesn't affect the C-only interface, however CSoundFile class
in the C++ interface is changed, therefore MODPLUG_LIBRARY_VERSION
in configure.ac would probably need changing before a release.