1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
// PyEPL: hardware/sound/soundFile.i
//
// Copyright (C) 2003-2005 Michael J. Kahana
// Authors: Ian Schleifer, Per Sederberg, Aaron Geller, Josh Jacobs
// URL: http://memory.psych.upenn.edu/programming/pyepl
//
// Distributed under the terms of the GNU Lesser General Public License
// (LGPL). See the license.txt that came with this file.
%module soundFile
// Must be careful with this typemap because other float * will be converted,
// but this typemap requires that it only apply to the readfile method.
#ifdef SWIGPYTHON
%typemap(out) float * {
// set the result, getting the numread from the class
$result = PyString_FromStringAndSize((char *)$1,((arg1)->getTotalSamples())*sizeof(float));
delete $1;
}
%typemap(out) short * {
// set the result, getting the numread from the class
$result = PyString_FromStringAndSize((char *)$1,((arg1)->getTotalSamples())*sizeof(short));
delete $1;
}
%typemap(in) float * {
char *buffer;
buffer = PyString_AsString($input);
$1 = (float *)buffer;
}
%typemap(in) short * {
char *buffer;
buffer = PyString_AsString($input);
$1 = (short *)buffer;
}
#endif
%{
#include "soundFile.h"
%}
%include "soundFile.h"
%include "constants.h"
|