aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi.cpp
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-05-19 19:55:47 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-05-19 19:55:47 +0300
commitbed6bcb220346c622a307bf405b9a1e87fd99db5 (patch)
treee1bdbcb286208ad7053ae625bf33c8ee6c5b5a29 /src/adlmidi.cpp
parent2654f224a0d875d265e0574b7746482c97e0d8a5 (diff)
downloadlibADLMIDI-bed6bcb220346c622a307bf405b9a1e87fd99db5.tar.gz
libADLMIDI-bed6bcb220346c622a307bf405b9a1e87fd99db5.tar.bz2
libADLMIDI-bed6bcb220346c622a307bf405b9a1e87fd99db5.zip
OpenWatcom compilation fix
Diffstat (limited to 'src/adlmidi.cpp')
-rw-r--r--src/adlmidi.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/adlmidi.cpp b/src/adlmidi.cpp
index 8648308..8fe70fd 100644
--- a/src/adlmidi.cpp
+++ b/src/adlmidi.cpp
@@ -659,6 +659,8 @@ static int SendStereoAudio(int samples_requested,
right += (outputOffset / 2) * sampleOffset;
typedef int32_t(&pfnConvert)(int32_t);
+ typedef float(&ffnConvert)(int32_t);
+ typedef double(&dfnConvert)(int32_t);
switch(sampleType) {
case ADLMIDI_SampleType_S8:
@@ -723,15 +725,21 @@ static int SendStereoAudio(int samples_requested,
break;
}
case ADLMIDI_SampleType_F32:
+ {
if(containerSize != sizeof(float))
return -1;
- CopySamplesTransformed<float>(left, right, _in, toCopy / 2, sampleOffset, adl_cvtReal<float>);
+ ffnConvert cvt = adl_cvtReal<float>;
+ CopySamplesTransformed<float>(left, right, _in, toCopy / 2, sampleOffset, cvt);
break;
+ }
case ADLMIDI_SampleType_F64:
+ {
if(containerSize != sizeof(double))
return -1;
- CopySamplesTransformed<double>(left, right, _in, toCopy / 2, sampleOffset, adl_cvtReal<double>);
+ dfnConvert cvt = adl_cvtReal<double>;
+ CopySamplesTransformed<double>(left, right, _in, toCopy / 2, sampleOffset, cvt);
break;
+ }
default:
return -1;
}