aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'Mac/Modules/snd/_Sndmodule.c')
-rw-r--r--Mac/Modules/snd/_Sndmodule.c1640
1 files changed, 820 insertions, 820 deletions
diff --git a/Mac/Modules/snd/_Sndmodule.c b/Mac/Modules/snd/_Sndmodule.c
index 1f646297b07..d713efe13c0 100644
--- a/Mac/Modules/snd/_Sndmodule.c
+++ b/Mac/Modules/snd/_Sndmodule.c
@@ -10,9 +10,9 @@
/* Macro to test whether a weak-loaded CFM function exists */
#define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\
- PyErr_SetString(PyExc_NotImplementedError, \
- "Not available in this shared library/OS version"); \
- return NULL; \
+ PyErr_SetString(PyExc_NotImplementedError, \
+ "Not available in this shared library/OS version"); \
+ return NULL; \
}} while(0)
@@ -22,16 +22,16 @@
static int
SndCmd_Convert(PyObject *v, SndCommand *pc)
{
- int len;
- pc->param1 = 0;
- pc->param2 = 0;
- if (PyTuple_Check(v)) {
- if (PyArg_ParseTuple(v, "h|hl", &pc->cmd, &pc->param1, &pc->param2))
- return 1;
- PyErr_Clear();
- return PyArg_ParseTuple(v, "Hhs#", &pc->cmd, &pc->param1, &pc->param2, &len);
- }
- return PyArg_Parse(v, "H", &pc->cmd);
+ int len;
+ pc->param1 = 0;
+ pc->param2 = 0;
+ if (PyTuple_Check(v)) {
+ if (PyArg_ParseTuple(v, "h|hl", &pc->cmd, &pc->param1, &pc->param2))
+ return 1;
+ PyErr_Clear();
+ return PyArg_ParseTuple(v, "Hhs#", &pc->cmd, &pc->param1, &pc->param2, &len);
+ }
+ return PyArg_Parse(v, "H", &pc->cmd);
}
static pascal void SndCh_UserRoutine(SndChannelPtr chan, SndCommand *cmd); /* Forward */
@@ -46,156 +46,156 @@ static PyTypeObject SndChannel_Type;
#define SndCh_Check(x) ((x)->ob_type == &SndChannel_Type || PyObject_TypeCheck((x), &SndChannel_Type))
typedef struct SndChannelObject {
- PyObject_HEAD
- SndChannelPtr ob_itself;
- /* Members used to implement callbacks: */
- PyObject *ob_callback;
- long ob_A5;
- SndCommand ob_cmd;
+ PyObject_HEAD
+ SndChannelPtr ob_itself;
+ /* Members used to implement callbacks: */
+ PyObject *ob_callback;
+ long ob_A5;
+ SndCommand ob_cmd;
} SndChannelObject;
static PyObject *SndCh_New(SndChannelPtr itself)
{
- SndChannelObject *it;
- it = PyObject_NEW(SndChannelObject, &SndChannel_Type);
- if (it == NULL) return NULL;
- it->ob_itself = itself;
- it->ob_callback = NULL;
- it->ob_A5 = SetCurrentA5();
- return (PyObject *)it;
+ SndChannelObject *it;
+ it = PyObject_NEW(SndChannelObject, &SndChannel_Type);
+ if (it == NULL) return NULL;
+ it->ob_itself = itself;
+ it->ob_callback = NULL;
+ it->ob_A5 = SetCurrentA5();
+ return (PyObject *)it;
}
static void SndCh_dealloc(SndChannelObject *self)
{
- SndDisposeChannel(self->ob_itself, 1);
- Py_XDECREF(self->ob_callback);
- PyObject_Free((PyObject *)self);
+ SndDisposeChannel(self->ob_itself, 1);
+ Py_XDECREF(self->ob_callback);
+ PyObject_Free((PyObject *)self);
}
static PyObject *SndCh_SndDoCommand(SndChannelObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- SndCommand cmd;
- Boolean noWait;
- if (!PyArg_ParseTuple(_args, "O&b",
- SndCmd_Convert, &cmd,
- &noWait))
- return NULL;
- _err = SndDoCommand(_self->ob_itself,
- &cmd,
- noWait);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ SndCommand cmd;
+ Boolean noWait;
+ if (!PyArg_ParseTuple(_args, "O&b",
+ SndCmd_Convert, &cmd,
+ &noWait))
+ return NULL;
+ _err = SndDoCommand(_self->ob_itself,
+ &cmd,
+ noWait);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *SndCh_SndDoImmediate(SndChannelObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- SndCommand cmd;
- if (!PyArg_ParseTuple(_args, "O&",
- SndCmd_Convert, &cmd))
- return NULL;
- _err = SndDoImmediate(_self->ob_itself,
- &cmd);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ SndCommand cmd;
+ if (!PyArg_ParseTuple(_args, "O&",
+ SndCmd_Convert, &cmd))
+ return NULL;
+ _err = SndDoImmediate(_self->ob_itself,
+ &cmd);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *SndCh_SndPlay(SndChannelObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- SndListHandle sndHandle;
- Boolean async;
- if (!PyArg_ParseTuple(_args, "O&b",
- ResObj_Convert, &sndHandle,
- &async))
- return NULL;
- _err = SndPlay(_self->ob_itself,
- sndHandle,
- async);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ SndListHandle sndHandle;
+ Boolean async;
+ if (!PyArg_ParseTuple(_args, "O&b",
+ ResObj_Convert, &sndHandle,
+ &async))
+ return NULL;
+ _err = SndPlay(_self->ob_itself,
+ sndHandle,
+ async);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *SndCh_SndChannelStatus(SndChannelObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short theLength;
- SCStatus theStatus__out__;
- if (!PyArg_ParseTuple(_args, "h",
- &theLength))
- return NULL;
- _err = SndChannelStatus(_self->ob_itself,
- theLength,
- &theStatus__out__);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("s#",
- (char *)&theStatus__out__, (int)sizeof(SCStatus));
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short theLength;
+ SCStatus theStatus__out__;
+ if (!PyArg_ParseTuple(_args, "h",
+ &theLength))
+ return NULL;
+ _err = SndChannelStatus(_self->ob_itself,
+ theLength,
+ &theStatus__out__);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("s#",
+ (char *)&theStatus__out__, (int)sizeof(SCStatus));
+ return _res;
}
static PyObject *SndCh_SndGetInfo(SndChannelObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- OSType selector;
- void * infoPtr;
- if (!PyArg_ParseTuple(_args, "O&w",
- PyMac_GetOSType, &selector,
- &infoPtr))
- return NULL;
- _err = SndGetInfo(_self->ob_itself,
- selector,
- infoPtr);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ OSType selector;
+ void * infoPtr;
+ if (!PyArg_ParseTuple(_args, "O&w",
+ PyMac_GetOSType, &selector,
+ &infoPtr))
+ return NULL;
+ _err = SndGetInfo(_self->ob_itself,
+ selector,
+ infoPtr);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *SndCh_SndSetInfo(SndChannelObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- OSType selector;
- void * infoPtr;
- if (!PyArg_ParseTuple(_args, "O&w",
- PyMac_GetOSType, &selector,
- &infoPtr))
- return NULL;
- _err = SndSetInfo(_self->ob_itself,
- selector,
- infoPtr);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ OSType selector;
+ void * infoPtr;
+ if (!PyArg_ParseTuple(_args, "O&w",
+ PyMac_GetOSType, &selector,
+ &infoPtr))
+ return NULL;
+ _err = SndSetInfo(_self->ob_itself,
+ selector,
+ infoPtr);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyMethodDef SndCh_methods[] = {
- {"SndDoCommand", (PyCFunction)SndCh_SndDoCommand, 1,
- PyDoc_STR("(SndCommand cmd, Boolean noWait) -> None")},
- {"SndDoImmediate", (PyCFunction)SndCh_SndDoImmediate, 1,
- PyDoc_STR("(SndCommand cmd) -> None")},
- {"SndPlay", (PyCFunction)SndCh_SndPlay, 1,
- PyDoc_STR("(SndListHandle sndHandle, Boolean async) -> None")},
- {"SndChannelStatus", (PyCFunction)SndCh_SndChannelStatus, 1,
- PyDoc_STR("(short theLength) -> (SCStatus theStatus)")},
- {"SndGetInfo", (PyCFunction)SndCh_SndGetInfo, 1,
- PyDoc_STR("(OSType selector, void * infoPtr) -> None")},
- {"SndSetInfo", (PyCFunction)SndCh_SndSetInfo, 1,
- PyDoc_STR("(OSType selector, void * infoPtr) -> None")},
- {NULL, NULL, 0}
+ {"SndDoCommand", (PyCFunction)SndCh_SndDoCommand, 1,
+ PyDoc_STR("(SndCommand cmd, Boolean noWait) -> None")},
+ {"SndDoImmediate", (PyCFunction)SndCh_SndDoImmediate, 1,
+ PyDoc_STR("(SndCommand cmd) -> None")},
+ {"SndPlay", (PyCFunction)SndCh_SndPlay, 1,
+ PyDoc_STR("(SndListHandle sndHandle, Boolean async) -> None")},
+ {"SndChannelStatus", (PyCFunction)SndCh_SndChannelStatus, 1,
+ PyDoc_STR("(short theLength) -> (SCStatus theStatus)")},
+ {"SndGetInfo", (PyCFunction)SndCh_SndGetInfo, 1,
+ PyDoc_STR("(OSType selector, void * infoPtr) -> None")},
+ {"SndSetInfo", (PyCFunction)SndCh_SndSetInfo, 1,
+ PyDoc_STR("(OSType selector, void * infoPtr) -> None")},
+ {NULL, NULL, 0}
};
#define SndCh_getsetlist NULL
@@ -208,47 +208,47 @@ static PyMethodDef SndCh_methods[] = {
#define SndCh_hash NULL
static PyTypeObject SndChannel_Type = {
- PyObject_HEAD_INIT(NULL)
- 0, /*ob_size*/
- "_Snd.SndChannel", /*tp_name*/
- sizeof(SndChannelObject), /*tp_basicsize*/
- 0, /*tp_itemsize*/
- /* methods */
- (destructor) SndCh_dealloc, /*tp_dealloc*/
- 0, /*tp_print*/
- (getattrfunc)0, /*tp_getattr*/
- (setattrfunc)0, /*tp_setattr*/
- (cmpfunc) SndCh_compare, /*tp_compare*/
- (reprfunc) SndCh_repr, /*tp_repr*/
- (PyNumberMethods *)0, /* tp_as_number */
- (PySequenceMethods *)0, /* tp_as_sequence */
- (PyMappingMethods *)0, /* tp_as_mapping */
- (hashfunc) SndCh_hash, /*tp_hash*/
- 0, /*tp_call*/
- 0, /*tp_str*/
- PyObject_GenericGetAttr, /*tp_getattro*/
- PyObject_GenericSetAttr, /*tp_setattro */
- 0, /*tp_as_buffer*/
- Py_TPFLAGS_DEFAULT, /* tp_flags */
- 0, /*tp_doc*/
- 0, /*tp_traverse*/
- 0, /*tp_clear*/
- 0, /*tp_richcompare*/
- 0, /*tp_weaklistoffset*/
- 0, /*tp_iter*/
- 0, /*tp_iternext*/
- SndCh_methods, /* tp_methods */
- 0, /*tp_members*/
- SndCh_getsetlist, /*tp_getset*/
- 0, /*tp_base*/
- 0, /*tp_dict*/
- 0, /*tp_descr_get*/
- 0, /*tp_descr_set*/
- 0, /*tp_dictoffset*/
- 0, /*tp_init*/
- 0, /*tp_alloc*/
- 0, /*tp_new*/
- 0, /*tp_free*/
+ PyObject_HEAD_INIT(NULL)
+ 0, /*ob_size*/
+ "_Snd.SndChannel", /*tp_name*/
+ sizeof(SndChannelObject), /*tp_basicsize*/
+ 0, /*tp_itemsize*/
+ /* methods */
+ (destructor) SndCh_dealloc, /*tp_dealloc*/
+ 0, /*tp_print*/
+ (getattrfunc)0, /*tp_getattr*/
+ (setattrfunc)0, /*tp_setattr*/
+ (cmpfunc) SndCh_compare, /*tp_compare*/
+ (reprfunc) SndCh_repr, /*tp_repr*/
+ (PyNumberMethods *)0, /* tp_as_number */
+ (PySequenceMethods *)0, /* tp_as_sequence */
+ (PyMappingMethods *)0, /* tp_as_mapping */
+ (hashfunc) SndCh_hash, /*tp_hash*/
+ 0, /*tp_call*/
+ 0, /*tp_str*/
+ PyObject_GenericGetAttr, /*tp_getattro*/
+ PyObject_GenericSetAttr, /*tp_setattro */
+ 0, /*tp_as_buffer*/
+ Py_TPFLAGS_DEFAULT, /* tp_flags */
+ 0, /*tp_doc*/
+ 0, /*tp_traverse*/
+ 0, /*tp_clear*/
+ 0, /*tp_richcompare*/
+ 0, /*tp_weaklistoffset*/
+ 0, /*tp_iter*/
+ 0, /*tp_iternext*/
+ SndCh_methods, /* tp_methods */
+ 0, /*tp_members*/
+ SndCh_getsetlist, /*tp_getset*/
+ 0, /*tp_base*/
+ 0, /*tp_dict*/
+ 0, /*tp_descr_get*/
+ 0, /*tp_descr_set*/
+ 0, /*tp_dictoffset*/
+ 0, /*tp_init*/
+ 0, /*tp_alloc*/
+ 0, /*tp_new*/
+ 0, /*tp_free*/
};
/* ------------------- End object type SndChannel ------------------- */
@@ -261,89 +261,89 @@ static PyTypeObject SPB_Type;
#define SPBObj_Check(x) ((x)->ob_type == &SPB_Type || PyObject_TypeCheck((x), &SPB_Type))
typedef struct SPBObject {
- PyObject_HEAD
- /* Members used to implement callbacks: */
- PyObject *ob_completion;
- PyObject *ob_interrupt;
- PyObject *ob_thiscallback;
- long ob_A5;
- SPB ob_spb;
+ PyObject_HEAD
+ /* Members used to implement callbacks: */
+ PyObject *ob_completion;
+ PyObject *ob_interrupt;
+ PyObject *ob_thiscallback;
+ long ob_A5;
+ SPB ob_spb;
} SPBObject;
static PyObject *SPBObj_New(void)
{
- SPBObject *it;
- it = PyObject_NEW(SPBObject, &SPB_Type);
- if (it == NULL) return NULL;
- it->ob_completion = NULL;
- it->ob_interrupt = NULL;
- it->ob_thiscallback = NULL;
- it->ob_A5 = SetCurrentA5();
- memset((char *)&it->ob_spb, 0, sizeof(it->ob_spb));
- it->ob_spb.userLong = (long)it;
- return (PyObject *)it;
+ SPBObject *it;
+ it = PyObject_NEW(SPBObject, &SPB_Type);
+ if (it == NULL) return NULL;
+ it->ob_completion = NULL;
+ it->ob_interrupt = NULL;
+ it->ob_thiscallback = NULL;
+ it->ob_A5 = SetCurrentA5();
+ memset((char *)&it->ob_spb, 0, sizeof(it->ob_spb));
+ it->ob_spb.userLong = (long)it;
+ return (PyObject *)it;
}
static int SPBObj_Convert(PyObject *v, SPBPtr *p_itself)
{
- if (!SPBObj_Check(v))
- {
- PyErr_SetString(PyExc_TypeError, "SPB required");
- return 0;
- }
- *p_itself = &((SPBObject *)v)->ob_spb;
- return 1;
+ if (!SPBObj_Check(v))
+ {
+ PyErr_SetString(PyExc_TypeError, "SPB required");
+ return 0;
+ }
+ *p_itself = &((SPBObject *)v)->ob_spb;
+ return 1;
}
static void SPBObj_dealloc(SPBObject *self)
{
- /* Cleanup of self->ob_itself goes here */
- self->ob_spb.userLong = 0;
- self->ob_thiscallback = 0;
- Py_XDECREF(self->ob_completion);
- Py_XDECREF(self->ob_interrupt);
- PyObject_Free((PyObject *)self);
+ /* Cleanup of self->ob_itself goes here */
+ self->ob_spb.userLong = 0;
+ self->ob_thiscallback = 0;
+ Py_XDECREF(self->ob_completion);
+ Py_XDECREF(self->ob_interrupt);
+ PyObject_Free((PyObject *)self);
}
static PyMethodDef SPBObj_methods[] = {
- {NULL, NULL, 0}
+ {NULL, NULL, 0}
};
static PyObject *SPBObj_get_inRefNum(SPBObject *self, void *closure)
{
- return Py_BuildValue("l", self->ob_spb.inRefNum);
+ return Py_BuildValue("l", self->ob_spb.inRefNum);
}
static int SPBObj_set_inRefNum(SPBObject *self, PyObject *v, void *closure)
{
- return -1 + PyArg_Parse(v, "l", &self->ob_spb.inRefNum);
- return 0;
+ return -1 + PyArg_Parse(v, "l", &self->ob_spb.inRefNum);
+ return 0;
}
static PyObject *SPBObj_get_count(SPBObject *self, void *closure)
{
- return Py_BuildValue("l", self->ob_spb.count);
+ return Py_BuildValue("l", self->ob_spb.count);
}
static int SPBObj_set_count(SPBObject *self, PyObject *v, void *closure)
{
- return -1 + PyArg_Parse(v, "l", &self->ob_spb.count);
- return 0;
+ return -1 + PyArg_Parse(v, "l", &self->ob_spb.count);
+ return 0;
}
static PyObject *SPBObj_get_milliseconds(SPBObject *self, void *closure)
{
- return Py_BuildValue("l", self->ob_spb.milliseconds);
+ return Py_BuildValue("l", self->ob_spb.milliseconds);
}
static int SPBObj_set_milliseconds(SPBObject *self, PyObject *v, void *closure)
{
- return -1 + PyArg_Parse(v, "l", &self->ob_spb.milliseconds);
- return 0;
+ return -1 + PyArg_Parse(v, "l", &self->ob_spb.milliseconds);
+ return 0;
}
static PyObject *SPBObj_get_error(SPBObject *self, void *closure)
{
- return Py_BuildValue("h", self->ob_spb.error);
+ return Py_BuildValue("h", self->ob_spb.error);
}
#define SPBObj_set_error NULL
@@ -352,20 +352,20 @@ static PyObject *SPBObj_get_error(SPBObject *self, void *closure)
static int SPBObj_set_completionRoutine(SPBObject *self, PyObject *v, void *closure)
{
- self->ob_spb.completionRoutine = NewSICompletionUPP(SPB_completion);
- self->ob_completion = v;
- Py_INCREF(v);
- return 0;
- return 0;
+ self->ob_spb.completionRoutine = NewSICompletionUPP(SPB_completion);
+ self->ob_completion = v;
+ Py_INCREF(v);
+ return 0;
+ return 0;
}
static PyGetSetDef SPBObj_getsetlist[] = {
- {"inRefNum", (getter)SPBObj_get_inRefNum, (setter)SPBObj_set_inRefNum, NULL},
- {"count", (getter)SPBObj_get_count, (setter)SPBObj_set_count, NULL},
- {"milliseconds", (getter)SPBObj_get_milliseconds, (setter)SPBObj_set_milliseconds, NULL},
- {"error", (getter)SPBObj_get_error, (setter)SPBObj_set_error, NULL},
- {"completionRoutine", (getter)SPBObj_get_completionRoutine, (setter)SPBObj_set_completionRoutine, NULL},
- {NULL, NULL, NULL, NULL},
+ {"inRefNum", (getter)SPBObj_get_inRefNum, (setter)SPBObj_set_inRefNum, NULL},
+ {"count", (getter)SPBObj_get_count, (setter)SPBObj_set_count, NULL},
+ {"milliseconds", (getter)SPBObj_get_milliseconds, (setter)SPBObj_set_milliseconds, NULL},
+ {"error", (getter)SPBObj_get_error, (setter)SPBObj_set_error, NULL},
+ {"completionRoutine", (getter)SPBObj_get_completionRoutine, (setter)SPBObj_set_completionRoutine, NULL},
+ {NULL, NULL, NULL, NULL},
};
@@ -376,47 +376,47 @@ static PyGetSetDef SPBObj_getsetlist[] = {
#define SPBObj_hash NULL
static PyTypeObject SPB_Type = {
- PyObject_HEAD_INIT(NULL)
- 0, /*ob_size*/
- "_Snd.SPB", /*tp_name*/
- sizeof(SPBObject), /*tp_basicsize*/
- 0, /*tp_itemsize*/
- /* methods */
- (destructor) SPBObj_dealloc, /*tp_dealloc*/
- 0, /*tp_print*/
- (getattrfunc)0, /*tp_getattr*/
- (setattrfunc)0, /*tp_setattr*/
- (cmpfunc) SPBObj_compare, /*tp_compare*/
- (reprfunc) SPBObj_repr, /*tp_repr*/
- (PyNumberMethods *)0, /* tp_as_number */
- (PySequenceMethods *)0, /* tp_as_sequence */
- (PyMappingMethods *)0, /* tp_as_mapping */
- (hashfunc) SPBObj_hash, /*tp_hash*/
- 0, /*tp_call*/
- 0, /*tp_str*/
- PyObject_GenericGetAttr, /*tp_getattro*/
- PyObject_GenericSetAttr, /*tp_setattro */
- 0, /*tp_as_buffer*/
- Py_TPFLAGS_DEFAULT, /* tp_flags */
- 0, /*tp_doc*/
- 0, /*tp_traverse*/
- 0, /*tp_clear*/
- 0, /*tp_richcompare*/
- 0, /*tp_weaklistoffset*/
- 0, /*tp_iter*/
- 0, /*tp_iternext*/
- SPBObj_methods, /* tp_methods */
- 0, /*tp_members*/
- SPBObj_getsetlist, /*tp_getset*/
- 0, /*tp_base*/
- 0, /*tp_dict*/
- 0, /*tp_descr_get*/
- 0, /*tp_descr_set*/
- 0, /*tp_dictoffset*/
- 0, /*tp_init*/
- 0, /*tp_alloc*/
- 0, /*tp_new*/
- 0, /*tp_free*/
+ PyObject_HEAD_INIT(NULL)
+ 0, /*ob_size*/
+ "_Snd.SPB", /*tp_name*/
+ sizeof(SPBObject), /*tp_basicsize*/
+ 0, /*tp_itemsize*/
+ /* methods */
+ (destructor) SPBObj_dealloc, /*tp_dealloc*/
+ 0, /*tp_print*/
+ (getattrfunc)0, /*tp_getattr*/
+ (setattrfunc)0, /*tp_setattr*/
+ (cmpfunc) SPBObj_compare, /*tp_compare*/
+ (reprfunc) SPBObj_repr, /*tp_repr*/
+ (PyNumberMethods *)0, /* tp_as_number */
+ (PySequenceMethods *)0, /* tp_as_sequence */
+ (PyMappingMethods *)0, /* tp_as_mapping */
+ (hashfunc) SPBObj_hash, /*tp_hash*/
+ 0, /*tp_call*/
+ 0, /*tp_str*/
+ PyObject_GenericGetAttr, /*tp_getattro*/
+ PyObject_GenericSetAttr, /*tp_setattro */
+ 0, /*tp_as_buffer*/
+ Py_TPFLAGS_DEFAULT, /* tp_flags */
+ 0, /*tp_doc*/
+ 0, /*tp_traverse*/
+ 0, /*tp_clear*/
+ 0, /*tp_richcompare*/
+ 0, /*tp_weaklistoffset*/
+ 0, /*tp_iter*/
+ 0, /*tp_iternext*/
+ SPBObj_methods, /* tp_methods */
+ 0, /*tp_members*/
+ SPBObj_getsetlist, /*tp_getset*/
+ 0, /*tp_base*/
+ 0, /*tp_dict*/
+ 0, /*tp_descr_get*/
+ 0, /*tp_descr_set*/
+ 0, /*tp_dictoffset*/
+ 0, /*tp_init*/
+ 0, /*tp_alloc*/
+ 0, /*tp_new*/
+ 0, /*tp_free*/
};
/* ---------------------- End object type SPB ----------------------- */
@@ -424,634 +424,634 @@ static PyTypeObject SPB_Type = {
static PyObject *Snd_SPB(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- _res = SPBObj_New(); return _res;
+ PyObject *_res = NULL;
+ _res = SPBObj_New(); return _res;
}
static PyObject *Snd_SysBeep(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- short duration;
- if (!PyArg_ParseTuple(_args, "h",
- &duration))
- return NULL;
- SysBeep(duration);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ short duration;
+ if (!PyArg_ParseTuple(_args, "h",
+ &duration))
+ return NULL;
+ SysBeep(duration);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SndNewChannel(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- SndChannelPtr chan = 0;
- short synth;
- long init;
- PyObject* userRoutine;
- if (!PyArg_ParseTuple(_args, "hlO",
- &synth,
- &init,
- &userRoutine))
- return NULL;
- if (userRoutine != Py_None && !PyCallable_Check(userRoutine))
- {
- PyErr_SetString(PyExc_TypeError, "callback must be callable");
- goto userRoutine__error__;
- }
- _err = SndNewChannel(&chan,
- synth,
- init,
- NewSndCallBackUPP(SndCh_UserRoutine));
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("O&",
- SndCh_New, chan);
- if (_res != NULL && userRoutine != Py_None)
- {
- SndChannelObject *p = (SndChannelObject *)_res;
- p->ob_itself->userInfo = (long)p;
- Py_INCREF(userRoutine);
- p->ob_callback = userRoutine;
- }
+ PyObject *_res = NULL;
+ OSErr _err;
+ SndChannelPtr chan = 0;
+ short synth;
+ long init;
+ PyObject* userRoutine;
+ if (!PyArg_ParseTuple(_args, "hlO",
+ &synth,
+ &init,
+ &userRoutine))
+ return NULL;
+ if (userRoutine != Py_None && !PyCallable_Check(userRoutine))
+ {
+ PyErr_SetString(PyExc_TypeError, "callback must be callable");
+ goto userRoutine__error__;
+ }
+ _err = SndNewChannel(&chan,
+ synth,
+ init,
+ NewSndCallBackUPP(SndCh_UserRoutine));
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("O&",
+ SndCh_New, chan);
+ if (_res != NULL && userRoutine != Py_None)
+ {
+ SndChannelObject *p = (SndChannelObject *)_res;
+ p->ob_itself->userInfo = (long)p;
+ Py_INCREF(userRoutine);
+ p->ob_callback = userRoutine;
+ }
userRoutine__error__: ;
- return _res;
+ return _res;
}
static PyObject *Snd_SndSoundManagerVersion(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- NumVersion _rv;
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = SndSoundManagerVersion();
- _res = Py_BuildValue("O&",
- PyMac_BuildNumVersion, _rv);
- return _res;
+ PyObject *_res = NULL;
+ NumVersion _rv;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ _rv = SndSoundManagerVersion();
+ _res = Py_BuildValue("O&",
+ PyMac_BuildNumVersion, _rv);
+ return _res;
}
static PyObject *Snd_SndManagerStatus(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short theLength;
- SMStatus theStatus__out__;
- if (!PyArg_ParseTuple(_args, "h",
- &theLength))
- return NULL;
- _err = SndManagerStatus(theLength,
- &theStatus__out__);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("s#",
- (char *)&theStatus__out__, (int)sizeof(SMStatus));
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short theLength;
+ SMStatus theStatus__out__;
+ if (!PyArg_ParseTuple(_args, "h",
+ &theLength))
+ return NULL;
+ _err = SndManagerStatus(theLength,
+ &theStatus__out__);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("s#",
+ (char *)&theStatus__out__, (int)sizeof(SMStatus));
+ return _res;
}
static PyObject *Snd_SndGetSysBeepState(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- short sysBeepState;
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- SndGetSysBeepState(&sysBeepState);
- _res = Py_BuildValue("h",
- sysBeepState);
- return _res;
+ PyObject *_res = NULL;
+ short sysBeepState;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ SndGetSysBeepState(&sysBeepState);
+ _res = Py_BuildValue("h",
+ sysBeepState);
+ return _res;
}
static PyObject *Snd_SndSetSysBeepState(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short sysBeepState;
- if (!PyArg_ParseTuple(_args, "h",
- &sysBeepState))
- return NULL;
- _err = SndSetSysBeepState(sysBeepState);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short sysBeepState;
+ if (!PyArg_ParseTuple(_args, "h",
+ &sysBeepState))
+ return NULL;
+ _err = SndSetSysBeepState(sysBeepState);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_GetSysBeepVolume(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long level;
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _err = GetSysBeepVolume(&level);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("l",
- level);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long level;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ _err = GetSysBeepVolume(&level);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("l",
+ level);
+ return _res;
}
static PyObject *Snd_SetSysBeepVolume(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long level;
- if (!PyArg_ParseTuple(_args, "l",
- &level))
- return NULL;
- _err = SetSysBeepVolume(level);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long level;
+ if (!PyArg_ParseTuple(_args, "l",
+ &level))
+ return NULL;
+ _err = SetSysBeepVolume(level);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_GetDefaultOutputVolume(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long level;
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _err = GetDefaultOutputVolume(&level);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("l",
- level);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long level;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ _err = GetDefaultOutputVolume(&level);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("l",
+ level);
+ return _res;
}
static PyObject *Snd_SetDefaultOutputVolume(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long level;
- if (!PyArg_ParseTuple(_args, "l",
- &level))
- return NULL;
- _err = SetDefaultOutputVolume(level);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long level;
+ if (!PyArg_ParseTuple(_args, "l",
+ &level))
+ return NULL;
+ _err = SetDefaultOutputVolume(level);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_GetSoundHeaderOffset(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- SndListHandle sndHandle;
- long offset;
- if (!PyArg_ParseTuple(_args, "O&",
- ResObj_Convert, &sndHandle))
- return NULL;
- _err = GetSoundHeaderOffset(sndHandle,
- &offset);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("l",
- offset);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ SndListHandle sndHandle;
+ long offset;
+ if (!PyArg_ParseTuple(_args, "O&",
+ ResObj_Convert, &sndHandle))
+ return NULL;
+ _err = GetSoundHeaderOffset(sndHandle,
+ &offset);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("l",
+ offset);
+ return _res;
}
static PyObject *Snd_GetCompressionInfo(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short compressionID;
- OSType format;
- short numChannels;
- short sampleSize;
- CompressionInfo cp__out__;
- if (!PyArg_ParseTuple(_args, "hO&hh",
- &compressionID,
- PyMac_GetOSType, &format,
- &numChannels,
- &sampleSize))
- return NULL;
- _err = GetCompressionInfo(compressionID,
- format,
- numChannels,
- sampleSize,
- &cp__out__);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("s#",
- (char *)&cp__out__, (int)sizeof(CompressionInfo));
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short compressionID;
+ OSType format;
+ short numChannels;
+ short sampleSize;
+ CompressionInfo cp__out__;
+ if (!PyArg_ParseTuple(_args, "hO&hh",
+ &compressionID,
+ PyMac_GetOSType, &format,
+ &numChannels,
+ &sampleSize))
+ return NULL;
+ _err = GetCompressionInfo(compressionID,
+ format,
+ numChannels,
+ sampleSize,
+ &cp__out__);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("s#",
+ (char *)&cp__out__, (int)sizeof(CompressionInfo));
+ return _res;
}
static PyObject *Snd_SetSoundPreference(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- OSType theType;
- Str255 name;
- Handle settings;
- if (!PyArg_ParseTuple(_args, "O&O&",
- PyMac_GetOSType, &theType,
- ResObj_Convert, &settings))
- return NULL;
- _err = SetSoundPreference(theType,
- name,
- settings);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("O&",
- PyMac_BuildStr255, name);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ OSType theType;
+ Str255 name;
+ Handle settings;
+ if (!PyArg_ParseTuple(_args, "O&O&",
+ PyMac_GetOSType, &theType,
+ ResObj_Convert, &settings))
+ return NULL;
+ _err = SetSoundPreference(theType,
+ name,
+ settings);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("O&",
+ PyMac_BuildStr255, name);
+ return _res;
}
static PyObject *Snd_GetSoundPreference(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- OSType theType;
- Str255 name;
- Handle settings;
- if (!PyArg_ParseTuple(_args, "O&O&",
- PyMac_GetOSType, &theType,
- ResObj_Convert, &settings))
- return NULL;
- _err = GetSoundPreference(theType,
- name,
- settings);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("O&",
- PyMac_BuildStr255, name);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ OSType theType;
+ Str255 name;
+ Handle settings;
+ if (!PyArg_ParseTuple(_args, "O&O&",
+ PyMac_GetOSType, &theType,
+ ResObj_Convert, &settings))
+ return NULL;
+ _err = GetSoundPreference(theType,
+ name,
+ settings);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("O&",
+ PyMac_BuildStr255, name);
+ return _res;
}
static PyObject *Snd_GetCompressionName(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- OSType compressionType;
- Str255 compressionName;
- if (!PyArg_ParseTuple(_args, "O&",
- PyMac_GetOSType, &compressionType))
- return NULL;
- _err = GetCompressionName(compressionType,
- compressionName);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("O&",
- PyMac_BuildStr255, compressionName);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ OSType compressionType;
+ Str255 compressionName;
+ if (!PyArg_ParseTuple(_args, "O&",
+ PyMac_GetOSType, &compressionType))
+ return NULL;
+ _err = GetCompressionName(compressionType,
+ compressionName);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("O&",
+ PyMac_BuildStr255, compressionName);
+ return _res;
}
static PyObject *Snd_SPBVersion(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- NumVersion _rv;
- if (!PyArg_ParseTuple(_args, ""))
- return NULL;
- _rv = SPBVersion();
- _res = Py_BuildValue("O&",
- PyMac_BuildNumVersion, _rv);
- return _res;
+ PyObject *_res = NULL;
+ NumVersion _rv;
+ if (!PyArg_ParseTuple(_args, ""))
+ return NULL;
+ _rv = SPBVersion();
+ _res = Py_BuildValue("O&",
+ PyMac_BuildNumVersion, _rv);
+ return _res;
}
static PyObject *Snd_SndRecord(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- Point corner;
- OSType quality;
- SndListHandle sndHandle;
- if (!PyArg_ParseTuple(_args, "O&O&",
- PyMac_GetPoint, &corner,
- PyMac_GetOSType, &quality))
- return NULL;
- _err = SndRecord((ModalFilterUPP)0,
- corner,
- quality,
- &sndHandle);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("O&",
- ResObj_New, sndHandle);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ Point corner;
+ OSType quality;
+ SndListHandle sndHandle;
+ if (!PyArg_ParseTuple(_args, "O&O&",
+ PyMac_GetPoint, &corner,
+ PyMac_GetOSType, &quality))
+ return NULL;
+ _err = SndRecord((ModalFilterUPP)0,
+ corner,
+ quality,
+ &sndHandle);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("O&",
+ ResObj_New, sndHandle);
+ return _res;
}
static PyObject *Snd_SPBSignInDevice(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short deviceRefNum;
- Str255 deviceName;
- if (!PyArg_ParseTuple(_args, "hO&",
- &deviceRefNum,
- PyMac_GetStr255, deviceName))
- return NULL;
- _err = SPBSignInDevice(deviceRefNum,
- deviceName);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short deviceRefNum;
+ Str255 deviceName;
+ if (!PyArg_ParseTuple(_args, "hO&",
+ &deviceRefNum,
+ PyMac_GetStr255, deviceName))
+ return NULL;
+ _err = SPBSignInDevice(deviceRefNum,
+ deviceName);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBSignOutDevice(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short deviceRefNum;
- if (!PyArg_ParseTuple(_args, "h",
- &deviceRefNum))
- return NULL;
- _err = SPBSignOutDevice(deviceRefNum);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short deviceRefNum;
+ if (!PyArg_ParseTuple(_args, "h",
+ &deviceRefNum))
+ return NULL;
+ _err = SPBSignOutDevice(deviceRefNum);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBGetIndexedDevice(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- short count;
- Str255 deviceName;
- Handle deviceIconHandle;
- if (!PyArg_ParseTuple(_args, "h",
- &count))
- return NULL;
- _err = SPBGetIndexedDevice(count,
- deviceName,
- &deviceIconHandle);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("O&O&",
- PyMac_BuildStr255, deviceName,
- ResObj_New, deviceIconHandle);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ short count;
+ Str255 deviceName;
+ Handle deviceIconHandle;
+ if (!PyArg_ParseTuple(_args, "h",
+ &count))
+ return NULL;
+ _err = SPBGetIndexedDevice(count,
+ deviceName,
+ &deviceIconHandle);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("O&O&",
+ PyMac_BuildStr255, deviceName,
+ ResObj_New, deviceIconHandle);
+ return _res;
}
static PyObject *Snd_SPBOpenDevice(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- Str255 deviceName;
- short permission;
- long inRefNum;
- if (!PyArg_ParseTuple(_args, "O&h",
- PyMac_GetStr255, deviceName,
- &permission))
- return NULL;
- _err = SPBOpenDevice(deviceName,
- permission,
- &inRefNum);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("l",
- inRefNum);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ Str255 deviceName;
+ short permission;
+ long inRefNum;
+ if (!PyArg_ParseTuple(_args, "O&h",
+ PyMac_GetStr255, deviceName,
+ &permission))
+ return NULL;
+ _err = SPBOpenDevice(deviceName,
+ permission,
+ &inRefNum);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("l",
+ inRefNum);
+ return _res;
}
static PyObject *Snd_SPBCloseDevice(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBCloseDevice(inRefNum);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBCloseDevice(inRefNum);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBRecord(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- SPBPtr inParamPtr;
- Boolean asynchFlag;
- if (!PyArg_ParseTuple(_args, "O&b",
- SPBObj_Convert, &inParamPtr,
- &asynchFlag))
- return NULL;
- _err = SPBRecord(inParamPtr,
- asynchFlag);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ SPBPtr inParamPtr;
+ Boolean asynchFlag;
+ if (!PyArg_ParseTuple(_args, "O&b",
+ SPBObj_Convert, &inParamPtr,
+ &asynchFlag))
+ return NULL;
+ _err = SPBRecord(inParamPtr,
+ asynchFlag);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBPauseRecording(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBPauseRecording(inRefNum);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBPauseRecording(inRefNum);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBResumeRecording(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBResumeRecording(inRefNum);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBResumeRecording(inRefNum);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBStopRecording(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBStopRecording(inRefNum);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBStopRecording(inRefNum);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBGetRecordingStatus(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- short recordingStatus;
- short meterLevel;
- unsigned long totalSamplesToRecord;
- unsigned long numberOfSamplesRecorded;
- unsigned long totalMsecsToRecord;
- unsigned long numberOfMsecsRecorded;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBGetRecordingStatus(inRefNum,
- &recordingStatus,
- &meterLevel,
- &totalSamplesToRecord,
- &numberOfSamplesRecorded,
- &totalMsecsToRecord,
- &numberOfMsecsRecorded);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("hhllll",
- recordingStatus,
- meterLevel,
- totalSamplesToRecord,
- numberOfSamplesRecorded,
- totalMsecsToRecord,
- numberOfMsecsRecorded);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ short recordingStatus;
+ short meterLevel;
+ unsigned long totalSamplesToRecord;
+ unsigned long numberOfSamplesRecorded;
+ unsigned long totalMsecsToRecord;
+ unsigned long numberOfMsecsRecorded;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBGetRecordingStatus(inRefNum,
+ &recordingStatus,
+ &meterLevel,
+ &totalSamplesToRecord,
+ &numberOfSamplesRecorded,
+ &totalMsecsToRecord,
+ &numberOfMsecsRecorded);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("hhllll",
+ recordingStatus,
+ meterLevel,
+ totalSamplesToRecord,
+ numberOfSamplesRecorded,
+ totalMsecsToRecord,
+ numberOfMsecsRecorded);
+ return _res;
}
static PyObject *Snd_SPBGetDeviceInfo(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- OSType infoType;
- void * infoData;
- if (!PyArg_ParseTuple(_args, "lO&w",
- &inRefNum,
- PyMac_GetOSType, &infoType,
- &infoData))
- return NULL;
- _err = SPBGetDeviceInfo(inRefNum,
- infoType,
- infoData);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ OSType infoType;
+ void * infoData;
+ if (!PyArg_ParseTuple(_args, "lO&w",
+ &inRefNum,
+ PyMac_GetOSType, &infoType,
+ &infoData))
+ return NULL;
+ _err = SPBGetDeviceInfo(inRefNum,
+ infoType,
+ infoData);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBSetDeviceInfo(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- OSType infoType;
- void * infoData;
- if (!PyArg_ParseTuple(_args, "lO&w",
- &inRefNum,
- PyMac_GetOSType, &infoType,
- &infoData))
- return NULL;
- _err = SPBSetDeviceInfo(inRefNum,
- infoType,
- infoData);
- if (_err != noErr) return PyMac_Error(_err);
- Py_INCREF(Py_None);
- _res = Py_None;
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ OSType infoType;
+ void * infoData;
+ if (!PyArg_ParseTuple(_args, "lO&w",
+ &inRefNum,
+ PyMac_GetOSType, &infoType,
+ &infoData))
+ return NULL;
+ _err = SPBSetDeviceInfo(inRefNum,
+ infoType,
+ infoData);
+ if (_err != noErr) return PyMac_Error(_err);
+ Py_INCREF(Py_None);
+ _res = Py_None;
+ return _res;
}
static PyObject *Snd_SPBMillisecondsToBytes(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- long milliseconds;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBMillisecondsToBytes(inRefNum,
- &milliseconds);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("l",
- milliseconds);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ long milliseconds;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBMillisecondsToBytes(inRefNum,
+ &milliseconds);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("l",
+ milliseconds);
+ return _res;
}
static PyObject *Snd_SPBBytesToMilliseconds(PyObject *_self, PyObject *_args)
{
- PyObject *_res = NULL;
- OSErr _err;
- long inRefNum;
- long byteCount;
- if (!PyArg_ParseTuple(_args, "l",
- &inRefNum))
- return NULL;
- _err = SPBBytesToMilliseconds(inRefNum,
- &byteCount);
- if (_err != noErr) return PyMac_Error(_err);
- _res = Py_BuildValue("l",
- byteCount);
- return _res;
+ PyObject *_res = NULL;
+ OSErr _err;
+ long inRefNum;
+ long byteCount;
+ if (!PyArg_ParseTuple(_args, "l",
+ &inRefNum))
+ return NULL;
+ _err = SPBBytesToMilliseconds(inRefNum,
+ &byteCount);
+ if (_err != noErr) return PyMac_Error(_err);
+ _res = Py_BuildValue("l",
+ byteCount);
+ return _res;
}
#endif /* __LP64__ */
static PyMethodDef Snd_methods[] = {
#ifndef __LP64__
- {"SPB", (PyCFunction)Snd_SPB, 1,
- PyDoc_STR(NULL)},
- {"SysBeep", (PyCFunction)Snd_SysBeep, 1,
- PyDoc_STR("(short duration) -> None")},
- {"SndNewChannel", (PyCFunction)Snd_SndNewChannel, 1,
- PyDoc_STR("(short synth, long init, PyObject* userRoutine) -> (SndChannelPtr chan)")},
- {"SndSoundManagerVersion", (PyCFunction)Snd_SndSoundManagerVersion, 1,
- PyDoc_STR("() -> (NumVersion _rv)")},
- {"SndManagerStatus", (PyCFunction)Snd_SndManagerStatus, 1,
- PyDoc_STR("(short theLength) -> (SMStatus theStatus)")},
- {"SndGetSysBeepState", (PyCFunction)Snd_SndGetSysBeepState, 1,
- PyDoc_STR("() -> (short sysBeepState)")},
- {"SndSetSysBeepState", (PyCFunction)Snd_SndSetSysBeepState, 1,
- PyDoc_STR("(short sysBeepState) -> None")},
- {"GetSysBeepVolume", (PyCFunction)Snd_GetSysBeepVolume, 1,
- PyDoc_STR("() -> (long level)")},
- {"SetSysBeepVolume", (PyCFunction)Snd_SetSysBeepVolume, 1,
- PyDoc_STR("(long level) -> None")},
- {"GetDefaultOutputVolume", (PyCFunction)Snd_GetDefaultOutputVolume, 1,
- PyDoc_STR("() -> (long level)")},
- {"SetDefaultOutputVolume", (PyCFunction)Snd_SetDefaultOutputVolume, 1,
- PyDoc_STR("(long level) -> None")},
- {"GetSoundHeaderOffset", (PyCFunction)Snd_GetSoundHeaderOffset, 1,
- PyDoc_STR("(SndListHandle sndHandle) -> (long offset)")},
- {"GetCompressionInfo", (PyCFunction)Snd_GetCompressionInfo, 1,
- PyDoc_STR("(short compressionID, OSType format, short numChannels, short sampleSize) -> (CompressionInfo cp)")},
- {"SetSoundPreference", (PyCFunction)Snd_SetSoundPreference, 1,
- PyDoc_STR("(OSType theType, Handle settings) -> (Str255 name)")},
- {"GetSoundPreference", (PyCFunction)Snd_GetSoundPreference, 1,
- PyDoc_STR("(OSType theType, Handle settings) -> (Str255 name)")},
- {"GetCompressionName", (PyCFunction)Snd_GetCompressionName, 1,
- PyDoc_STR("(OSType compressionType) -> (Str255 compressionName)")},
- {"SPBVersion", (PyCFunction)Snd_SPBVersion, 1,
- PyDoc_STR("() -> (NumVersion _rv)")},
- {"SndRecord", (PyCFunction)Snd_SndRecord, 1,
- PyDoc_STR("(Point corner, OSType quality) -> (SndListHandle sndHandle)")},
- {"SPBSignInDevice", (PyCFunction)Snd_SPBSignInDevice, 1,
- PyDoc_STR("(short deviceRefNum, Str255 deviceName) -> None")},
- {"SPBSignOutDevice", (PyCFunction)Snd_SPBSignOutDevice, 1,
- PyDoc_STR("(short deviceRefNum) -> None")},
- {"SPBGetIndexedDevice", (PyCFunction)Snd_SPBGetIndexedDevice, 1,
- PyDoc_STR("(short count) -> (Str255 deviceName, Handle deviceIconHandle)")},
- {"SPBOpenDevice", (PyCFunction)Snd_SPBOpenDevice, 1,
- PyDoc_STR("(Str255 deviceName, short permission) -> (long inRefNum)")},
- {"SPBCloseDevice", (PyCFunction)Snd_SPBCloseDevice, 1,
- PyDoc_STR("(long inRefNum) -> None")},
- {"SPBRecord", (PyCFunction)Snd_SPBRecord, 1,
- PyDoc_STR("(SPBPtr inParamPtr, Boolean asynchFlag) -> None")},
- {"SPBPauseRecording", (PyCFunction)Snd_SPBPauseRecording, 1,
- PyDoc_STR("(long inRefNum) -> None")},
- {"SPBResumeRecording", (PyCFunction)Snd_SPBResumeRecording, 1,
- PyDoc_STR("(long inRefNum) -> None")},
- {"SPBStopRecording", (PyCFunction)Snd_SPBStopRecording, 1,
- PyDoc_STR("(long inRefNum) -> None")},
- {"SPBGetRecordingStatus", (PyCFunction)Snd_SPBGetRecordingStatus, 1,
- PyDoc_STR("(long inRefNum) -> (short recordingStatus, short meterLevel, unsigned long totalSamplesToRecord, unsigned long numberOfSamplesRecorded, unsigned long totalMsecsToRecord, unsigned long numberOfMsecsRecorded)")},
- {"SPBGetDeviceInfo", (PyCFunction)Snd_SPBGetDeviceInfo, 1,
- PyDoc_STR("(long inRefNum, OSType infoType, void * infoData) -> None")},
- {"SPBSetDeviceInfo", (PyCFunction)Snd_SPBSetDeviceInfo, 1,
- PyDoc_STR("(long inRefNum, OSType infoType, void * infoData) -> None")},
- {"SPBMillisecondsToBytes", (PyCFunction)Snd_SPBMillisecondsToBytes, 1,
- PyDoc_STR("(long inRefNum) -> (long milliseconds)")},
- {"SPBBytesToMilliseconds", (PyCFunction)Snd_SPBBytesToMilliseconds, 1,
- PyDoc_STR("(long inRefNum) -> (long byteCount)")},
+ {"SPB", (PyCFunction)Snd_SPB, 1,
+ PyDoc_STR(NULL)},
+ {"SysBeep", (PyCFunction)Snd_SysBeep, 1,
+ PyDoc_STR("(short duration) -> None")},
+ {"SndNewChannel", (PyCFunction)Snd_SndNewChannel, 1,
+ PyDoc_STR("(short synth, long init, PyObject* userRoutine) -> (SndChannelPtr chan)")},
+ {"SndSoundManagerVersion", (PyCFunction)Snd_SndSoundManagerVersion, 1,
+ PyDoc_STR("() -> (NumVersion _rv)")},
+ {"SndManagerStatus", (PyCFunction)Snd_SndManagerStatus, 1,
+ PyDoc_STR("(short theLength) -> (SMStatus theStatus)")},
+ {"SndGetSysBeepState", (PyCFunction)Snd_SndGetSysBeepState, 1,
+ PyDoc_STR("() -> (short sysBeepState)")},
+ {"SndSetSysBeepState", (PyCFunction)Snd_SndSetSysBeepState, 1,
+ PyDoc_STR("(short sysBeepState) -> None")},
+ {"GetSysBeepVolume", (PyCFunction)Snd_GetSysBeepVolume, 1,
+ PyDoc_STR("() -> (long level)")},
+ {"SetSysBeepVolume", (PyCFunction)Snd_SetSysBeepVolume, 1,
+ PyDoc_STR("(long level) -> None")},
+ {"GetDefaultOutputVolume", (PyCFunction)Snd_GetDefaultOutputVolume, 1,
+ PyDoc_STR("() -> (long level)")},
+ {"SetDefaultOutputVolume", (PyCFunction)Snd_SetDefaultOutputVolume, 1,
+ PyDoc_STR("(long level) -> None")},
+ {"GetSoundHeaderOffset", (PyCFunction)Snd_GetSoundHeaderOffset, 1,
+ PyDoc_STR("(SndListHandle sndHandle) -> (long offset)")},
+ {"GetCompressionInfo", (PyCFunction)Snd_GetCompressionInfo, 1,
+ PyDoc_STR("(short compressionID, OSType format, short numChannels, short sampleSize) -> (CompressionInfo cp)")},
+ {"SetSoundPreference", (PyCFunction)Snd_SetSoundPreference, 1,
+ PyDoc_STR("(OSType theType, Handle settings) -> (Str255 name)")},
+ {"GetSoundPreference", (PyCFunction)Snd_GetSoundPreference, 1,
+ PyDoc_STR("(OSType theType, Handle settings) -> (Str255 name)")},
+ {"GetCompressionName", (PyCFunction)Snd_GetCompressionName, 1,
+ PyDoc_STR("(OSType compressionType) -> (Str255 compressionName)")},
+ {"SPBVersion", (PyCFunction)Snd_SPBVersion, 1,
+ PyDoc_STR("() -> (NumVersion _rv)")},
+ {"SndRecord", (PyCFunction)Snd_SndRecord, 1,
+ PyDoc_STR("(Point corner, OSType quality) -> (SndListHandle sndHandle)")},
+ {"SPBSignInDevice", (PyCFunction)Snd_SPBSignInDevice, 1,
+ PyDoc_STR("(short deviceRefNum, Str255 deviceName) -> None")},
+ {"SPBSignOutDevice", (PyCFunction)Snd_SPBSignOutDevice, 1,
+ PyDoc_STR("(short deviceRefNum) -> None")},
+ {"SPBGetIndexedDevice", (PyCFunction)Snd_SPBGetIndexedDevice, 1,
+ PyDoc_STR("(short count) -> (Str255 deviceName, Handle deviceIconHandle)")},
+ {"SPBOpenDevice", (PyCFunction)Snd_SPBOpenDevice, 1,
+ PyDoc_STR("(Str255 deviceName, short permission) -> (long inRefNum)")},
+ {"SPBCloseDevice", (PyCFunction)Snd_SPBCloseDevice, 1,
+ PyDoc_STR("(long inRefNum) -> None")},
+ {"SPBRecord", (PyCFunction)Snd_SPBRecord, 1,
+ PyDoc_STR("(SPBPtr inParamPtr, Boolean asynchFlag) -> None")},
+ {"SPBPauseRecording", (PyCFunction)Snd_SPBPauseRecording, 1,
+ PyDoc_STR("(long inRefNum) -> None")},
+ {"SPBResumeRecording", (PyCFunction)Snd_SPBResumeRecording, 1,
+ PyDoc_STR("(long inRefNum) -> None")},
+ {"SPBStopRecording", (PyCFunction)Snd_SPBStopRecording, 1,
+ PyDoc_STR("(long inRefNum) -> None")},
+ {"SPBGetRecordingStatus", (PyCFunction)Snd_SPBGetRecordingStatus, 1,
+ PyDoc_STR("(long inRefNum) -> (short recordingStatus, short meterLevel, unsigned long totalSamplesToRecord, unsigned long numberOfSamplesRecorded, unsigned long totalMsecsToRecord, unsigned long numberOfMsecsRecorded)")},
+ {"SPBGetDeviceInfo", (PyCFunction)Snd_SPBGetDeviceInfo, 1,
+ PyDoc_STR("(long inRefNum, OSType infoType, void * infoData) -> None")},
+ {"SPBSetDeviceInfo", (PyCFunction)Snd_SPBSetDeviceInfo, 1,
+ PyDoc_STR("(long inRefNum, OSType infoType, void * infoData) -> None")},
+ {"SPBMillisecondsToBytes", (PyCFunction)Snd_SPBMillisecondsToBytes, 1,
+ PyDoc_STR("(long inRefNum) -> (long milliseconds)")},
+ {"SPBBytesToMilliseconds", (PyCFunction)Snd_SPBBytesToMilliseconds, 1,
+ PyDoc_STR("(long inRefNum) -> (long byteCount)")},
#endif /* __LP64__ */
- {NULL, NULL, 0}
+ {NULL, NULL, 0}
};
@@ -1061,62 +1061,62 @@ static PyMethodDef Snd_methods[] = {
static int
SndCh_CallCallBack(void *arg)
{
- SndChannelObject *p = (SndChannelObject *)arg;
- PyObject *args;
- PyObject *res;
- args = Py_BuildValue("(O(hhl))",
- p, p->ob_cmd.cmd, p->ob_cmd.param1, p->ob_cmd.param2);
- res = PyEval_CallObject(p->ob_callback, args);
- Py_DECREF(args);
- if (res == NULL)
- return -1;
- Py_DECREF(res);
- return 0;
+ SndChannelObject *p = (SndChannelObject *)arg;
+ PyObject *args;
+ PyObject *res;
+ args = Py_BuildValue("(O(hhl))",
+ p, p->ob_cmd.cmd, p->ob_cmd.param1, p->ob_cmd.param2);
+ res = PyEval_CallObject(p->ob_callback, args);
+ Py_DECREF(args);
+ if (res == NULL)
+ return -1;
+ Py_DECREF(res);
+ return 0;
}
/* Routine passed to NewSndChannel -- schedule a call to SndCh_CallCallBack */
static pascal void
SndCh_UserRoutine(SndChannelPtr chan, SndCommand *cmd)
{
- SndChannelObject *p = (SndChannelObject *)(chan->userInfo);
- if (p->ob_callback != NULL) {
- long A5 = SetA5(p->ob_A5);
- p->ob_cmd = *cmd;
- Py_AddPendingCall(SndCh_CallCallBack, (void *)p);
- SetA5(A5);
- }
+ SndChannelObject *p = (SndChannelObject *)(chan->userInfo);
+ if (p->ob_callback != NULL) {
+ long A5 = SetA5(p->ob_A5);
+ p->ob_cmd = *cmd;
+ Py_AddPendingCall(SndCh_CallCallBack, (void *)p);
+ SetA5(A5);
+ }
}
/* SPB callbacks - Schedule callbacks to Python */
static int
SPB_CallCallBack(void *arg)
{
- SPBObject *p = (SPBObject *)arg;
- PyObject *args;
- PyObject *res;
-
- if ( p->ob_thiscallback == 0 ) return 0;
- args = Py_BuildValue("(O)", p);
- res = PyEval_CallObject(p->ob_thiscallback, args);
- p->ob_thiscallback = 0;
- Py_DECREF(args);
- if (res == NULL)
- return -1;
- Py_DECREF(res);
- return 0;
+ SPBObject *p = (SPBObject *)arg;
+ PyObject *args;
+ PyObject *res;
+
+ if ( p->ob_thiscallback == 0 ) return 0;
+ args = Py_BuildValue("(O)", p);
+ res = PyEval_CallObject(p->ob_thiscallback, args);
+ p->ob_thiscallback = 0;
+ Py_DECREF(args);
+ if (res == NULL)
+ return -1;
+ Py_DECREF(res);
+ return 0;
}
static pascal void
SPB_completion(SPBPtr my_spb)
{
- SPBObject *p = (SPBObject *)(my_spb->userLong);
-
- if (p && p->ob_completion) {
- long A5 = SetA5(p->ob_A5);
- p->ob_thiscallback = p->ob_completion; /* Hope we cannot get two at the same time */
- Py_AddPendingCall(SPB_CallCallBack, (void *)p);
- SetA5(A5);
- }
+ SPBObject *p = (SPBObject *)(my_spb->userLong);
+
+ if (p && p->ob_completion) {
+ long A5 = SetA5(p->ob_A5);
+ p->ob_thiscallback = p->ob_completion; /* Hope we cannot get two at the same time */
+ Py_AddPendingCall(SPB_CallCallBack, (void *)p);
+ SetA5(A5);
+ }
}
#endif /* __LP64__ */
@@ -1124,38 +1124,38 @@ SPB_completion(SPBPtr my_spb)
void init_Snd(void)
{
- PyObject *m;
+ PyObject *m;
#ifndef __LP64__
- PyObject *d;
+ PyObject *d;
#endif /* __LP64__ */
- m = Py_InitModule("_Snd", Snd_methods);
+ m = Py_InitModule("_Snd", Snd_methods);
#ifndef __LP64__
- d = PyModule_GetDict(m);
- Snd_Error = PyMac_GetOSErrException();
- if (Snd_Error == NULL ||
- PyDict_SetItemString(d, "Error", Snd_Error) != 0)
- return;
- SndChannel_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&SndChannel_Type) < 0) return;
- Py_INCREF(&SndChannel_Type);
- PyModule_AddObject(m, "SndChannel", (PyObject *)&SndChannel_Type);
- /* Backward-compatible name */
- Py_INCREF(&SndChannel_Type);
- PyModule_AddObject(m, "SndChannelType", (PyObject *)&SndChannel_Type);
- SPB_Type.ob_type = &PyType_Type;
- if (PyType_Ready(&SPB_Type) < 0) return;
- Py_INCREF(&SPB_Type);
+ d = PyModule_GetDict(m);
+ Snd_Error = PyMac_GetOSErrException();
+ if (Snd_Error == NULL ||
+ PyDict_SetItemString(d, "Error", Snd_Error) != 0)
+ return;
+ SndChannel_Type.ob_type = &PyType_Type;
+ if (PyType_Ready(&SndChannel_Type) < 0) return;
+ Py_INCREF(&SndChannel_Type);
+ PyModule_AddObject(m, "SndChannel", (PyObject *)&SndChannel_Type);
+ /* Backward-compatible name */
+ Py_INCREF(&SndChannel_Type);
+ PyModule_AddObject(m, "SndChannelType", (PyObject *)&SndChannel_Type);
+ SPB_Type.ob_type = &PyType_Type;
+ if (PyType_Ready(&SPB_Type) < 0) return;
+ Py_INCREF(&SPB_Type);
#if 0
- PyModule_AddObject(m, "SPB", (PyObject *)&SPB_Type);
+ PyModule_AddObject(m, "SPB", (PyObject *)&SPB_Type);
#endif
- /* Backward-compatible name */
- Py_INCREF(&SPB_Type);
- PyModule_AddObject(m, "SPBType", (PyObject *)&SPB_Type);
+ /* Backward-compatible name */
+ Py_INCREF(&SPB_Type);
+ PyModule_AddObject(m, "SPBType", (PyObject *)&SPB_Type);
#endif /* __LP64__ */
}