annotate Mac/Modules/snd/Sndmodule.c @ 5817:48b94de85bf3 legacy-trunk

Extensive changes by AMK.
author Guido van Rossum <guido@python.org>
date Thu, 17 Jul 1997 16:29:42 +0000
parents 22a033bbe655
children 172c7febd755
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
1
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
2 /* =========================== Module Snd =========================== */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
3
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
4 #include "Python.h"
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
5
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
6
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
7
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
8 #define SystemSevenOrLater 1
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
9
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
10 #include "macglue.h"
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
11 #include <Memory.h>
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
12 #include <Dialogs.h>
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
13 #include <Menus.h>
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
14 #include <Controls.h>
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
15
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
16 extern PyObject *ResObj_New(Handle);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
17 extern int ResObj_Convert(PyObject *, Handle *);
3295
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
18 extern PyObject *OptResObj_New(Handle);
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
19 extern int OptResObj_Convert(PyObject *, Handle *);
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
20
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
21 extern PyObject *WinObj_New(WindowPtr);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
22 extern int WinObj_Convert(PyObject *, WindowPtr *);
3295
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
23 extern PyTypeObject Window_Type;
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
24 #define WinObj_Check(x) ((x)->ob_type == &Window_Type)
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
25
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
26 extern PyObject *DlgObj_New(DialogPtr);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
27 extern int DlgObj_Convert(PyObject *, DialogPtr *);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
28 extern PyTypeObject Dialog_Type;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
29 #define DlgObj_Check(x) ((x)->ob_type == &Dialog_Type)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
30
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
31 extern PyObject *MenuObj_New(MenuHandle);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
32 extern int MenuObj_Convert(PyObject *, MenuHandle *);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
33
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
34 extern PyObject *CtlObj_New(ControlHandle);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
35 extern int CtlObj_Convert(PyObject *, ControlHandle *);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
36
3295
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
37 extern PyObject *GrafObj_New(GrafPtr);
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
38 extern int GrafObj_Convert(PyObject *, GrafPtr *);
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
39
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
40 extern PyObject *BMObj_New(BitMapPtr);
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
41 extern int BMObj_Convert(PyObject *, BitMapPtr *);
3ca111e0b1a7 - Added color window/pixmap support
Jack Jansen <jack.jansen@cwi.nl>
parents: 3182
diff changeset
42
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
43 extern PyObject *WinObj_WhichWindow(WindowPtr);
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
44
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
45 #include <Sound.h>
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
46
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
47 #ifndef HAVE_UNIVERSAL_HEADERS
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
48 #define SndCallBackUPP ProcPtr
2399
438a8c265eb9 ported back to Think C
Guido van Rossum <guido@python.org>
parents: 2398
diff changeset
49 #define NewSndCallBackProc(x) ((SndCallBackProcPtr)(x))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
50 #define SndListHandle Handle
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
51 #endif
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
52
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
53 #include <OSUtils.h> /* for Set(Current)A5 */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
54
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
55 /* Create a SndCommand object (an (int, int, int) tuple) */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
56 static PyObject *
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
57 SndCmd_New(SndCommand *pc)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
58 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
59 return Py_BuildValue("hhl", pc->cmd, pc->param1, pc->param2);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
60 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
61
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
62 /* Convert a SndCommand argument */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
63 static int
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
64 SndCmd_Convert(PyObject *v, SndCommand *pc)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
65 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
66 int len;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
67 pc->param1 = 0;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
68 pc->param2 = 0;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
69 if (PyTuple_Check(v)) {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
70 if (PyArg_ParseTuple(v, "h|hl", &pc->cmd, &pc->param1, &pc->param2))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
71 return 1;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
72 PyErr_Clear();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
73 return PyArg_ParseTuple(v, "hhs#", &pc->cmd, &pc->param1, &pc->param2, &len);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
74 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
75 return PyArg_Parse(v, "h", &pc->cmd);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
76 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
77
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
78 static pascal void SndCh_UserRoutine(SndChannelPtr chan, SndCommand *cmd); /* Forward */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
79
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
80 static PyObject *Snd_Error;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
81
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
82 /* --------------------- Object type SndChannel --------------------- */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
83
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
84 staticforward PyTypeObject SndChannel_Type;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
85
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
86 #define SndCh_Check(x) ((x)->ob_type == &SndChannel_Type)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
87
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
88 typedef struct SndChannelObject {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
89 PyObject_HEAD
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
90 SndChannelPtr ob_itself;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
91 /* Members used to implement callbacks: */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
92 PyObject *ob_callback;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
93 long ob_A5;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
94 SndCommand ob_cmd;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
95 } SndChannelObject;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
96
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
97 static PyObject *SndCh_New(itself)
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
98 SndChannelPtr itself;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
99 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
100 SndChannelObject *it;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
101 it = PyObject_NEW(SndChannelObject, &SndChannel_Type);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
102 if (it == NULL) return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
103 it->ob_itself = itself;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
104 it->ob_callback = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
105 it->ob_A5 = SetCurrentA5();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
106 return (PyObject *)it;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
107 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
108 static SndCh_Convert(v, p_itself)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
109 PyObject *v;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
110 SndChannelPtr *p_itself;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
111 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
112 if (!SndCh_Check(v))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
113 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
114 PyErr_SetString(PyExc_TypeError, "SndChannel required");
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
115 return 0;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
116 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
117 *p_itself = ((SndChannelObject *)v)->ob_itself;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
118 return 1;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
119 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
120
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
121 static void SndCh_dealloc(self)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
122 SndChannelObject *self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
123 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
124 SndDisposeChannel(self->ob_itself, 1);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
125 Py_XDECREF(self->ob_callback);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
126 PyMem_DEL(self);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
127 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
128
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
129 static PyObject *SndCh_SndDoCommand(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
130 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
131 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
132 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
133 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
134 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
135 SndCommand cmd;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
136 Boolean noWait;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
137 if (!PyArg_ParseTuple(_args, "O&b",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
138 SndCmd_Convert, &cmd,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
139 &noWait))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
140 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
141 _err = SndDoCommand(_self->ob_itself,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
142 &cmd,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
143 noWait);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
144 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
145 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
146 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
147 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
148 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
149
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
150 static PyObject *SndCh_SndDoImmediate(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
151 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
152 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
153 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
154 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
155 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
156 SndCommand cmd;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
157 if (!PyArg_ParseTuple(_args, "O&",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
158 SndCmd_Convert, &cmd))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
159 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
160 _err = SndDoImmediate(_self->ob_itself,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
161 &cmd);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
162 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
163 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
164 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
165 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
166 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
167
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
168 static PyObject *SndCh_SndPlay(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
169 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
170 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
171 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
172 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
173 OSErr _err;
2282
b034b4ea2b39 get rid of obsolete low-level routines
Guido van Rossum <guido@python.org>
parents: 2267
diff changeset
174 SndListHandle sndHdl;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
175 Boolean async;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
176 if (!PyArg_ParseTuple(_args, "O&b",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
177 ResObj_Convert, &sndHdl,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
178 &async))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
179 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
180 _err = SndPlay(_self->ob_itself,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
181 sndHdl,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
182 async);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
183 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
184 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
185 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
186 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
187 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
188
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
189 static PyObject *SndCh_SndStartFilePlay(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
190 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
191 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
192 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
193 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
194 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
195 short fRefNum;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
196 short resNum;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
197 long bufferSize;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
198 Boolean async;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
199 if (!PyArg_ParseTuple(_args, "hhlb",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
200 &fRefNum,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
201 &resNum,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
202 &bufferSize,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
203 &async))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
204 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
205 _err = SndStartFilePlay(_self->ob_itself,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
206 fRefNum,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
207 resNum,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
208 bufferSize,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
209 0,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
210 0,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
211 0,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
212 async);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
213 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
214 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
215 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
216 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
217 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
218
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
219 static PyObject *SndCh_SndPauseFilePlay(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
220 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
221 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
222 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
223 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
224 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
225 if (!PyArg_ParseTuple(_args, ""))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
226 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
227 _err = SndPauseFilePlay(_self->ob_itself);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
228 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
229 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
230 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
231 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
232 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
233
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
234 static PyObject *SndCh_SndStopFilePlay(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
235 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
236 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
237 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
238 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
239 OSErr _err;
2721
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
240 Boolean quietNow;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
241 if (!PyArg_ParseTuple(_args, "b",
2721
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
242 &quietNow))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
243 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
244 _err = SndStopFilePlay(_self->ob_itself,
2721
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
245 quietNow);
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
246 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
247 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
248 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
249 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
250 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
251
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
252 static PyObject *SndCh_SndChannelStatus(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
253 SndChannelObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
254 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
255 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
256 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
257 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
258 short theLength;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
259 SCStatus theStatus__out__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
260 if (!PyArg_ParseTuple(_args, "h",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
261 &theLength))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
262 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
263 _err = SndChannelStatus(_self->ob_itself,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
264 theLength,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
265 &theStatus__out__);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
266 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
267 _res = Py_BuildValue("s#",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
268 (char *)&theStatus__out__, (int)sizeof(SCStatus));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
269 theStatus__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
270 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
271 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
272
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
273 static PyMethodDef SndCh_methods[] = {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
274 {"SndDoCommand", (PyCFunction)SndCh_SndDoCommand, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
275 "(SndCommand cmd, Boolean noWait) -> None"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
276 {"SndDoImmediate", (PyCFunction)SndCh_SndDoImmediate, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
277 "(SndCommand cmd) -> None"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
278 {"SndPlay", (PyCFunction)SndCh_SndPlay, 1,
2282
b034b4ea2b39 get rid of obsolete low-level routines
Guido van Rossum <guido@python.org>
parents: 2267
diff changeset
279 "(SndListHandle sndHdl, Boolean async) -> None"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
280 {"SndStartFilePlay", (PyCFunction)SndCh_SndStartFilePlay, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
281 "(short fRefNum, short resNum, long bufferSize, Boolean async) -> None"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
282 {"SndPauseFilePlay", (PyCFunction)SndCh_SndPauseFilePlay, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
283 "() -> None"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
284 {"SndStopFilePlay", (PyCFunction)SndCh_SndStopFilePlay, 1,
2721
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
285 "(Boolean quietNow) -> None"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
286 {"SndChannelStatus", (PyCFunction)SndCh_SndChannelStatus, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
287 "(short theLength) -> (SCStatus theStatus)"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
288 {NULL, NULL, 0}
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
289 };
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
290
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
291 static PyMethodChain SndCh_chain = { SndCh_methods, NULL };
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
292
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
293 static PyObject *SndCh_getattr(self, name)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
294 SndChannelObject *self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
295 char *name;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
296 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
297 return Py_FindMethodInChain(&SndCh_chain, (PyObject *)self, name);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
298 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
299
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
300 #define SndCh_setattr NULL
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
301
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
302 staticforward PyTypeObject SndChannel_Type = {
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
303 PyObject_HEAD_INIT(&PyType_Type)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
304 0, /*ob_size*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
305 "SndChannel", /*tp_name*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
306 sizeof(SndChannelObject), /*tp_basicsize*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
307 0, /*tp_itemsize*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
308 /* methods */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
309 (destructor) SndCh_dealloc, /*tp_dealloc*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
310 0, /*tp_print*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
311 (getattrfunc) SndCh_getattr, /*tp_getattr*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
312 (setattrfunc) SndCh_setattr, /*tp_setattr*/
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
313 };
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
314
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
315 /* ------------------- End object type SndChannel ------------------- */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
316
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
317
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
318 static PyObject *Snd_SndNewChannel(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
319 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
320 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
321 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
322 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
323 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
324 SndChannelPtr chan = 0;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
325 short synth;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
326 long init;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
327 PyObject* userRoutine;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
328 if (!PyArg_ParseTuple(_args, "hlO",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
329 &synth,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
330 &init,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
331 &userRoutine))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
332 return NULL;
2282
b034b4ea2b39 get rid of obsolete low-level routines
Guido van Rossum <guido@python.org>
parents: 2267
diff changeset
333 if (userRoutine != Py_None && !PyCallable_Check(userRoutine))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
334 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
335 PyErr_SetString(PyExc_TypeError, "callback must be callable");
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
336 goto userRoutine__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
337 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
338 _err = SndNewChannel(&chan,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
339 synth,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
340 init,
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
341 NewSndCallBackProc(SndCh_UserRoutine));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
342 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
343 _res = Py_BuildValue("O&",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
344 SndCh_New, chan);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
345 if (_res != NULL && userRoutine != Py_None)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
346 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
347 SndChannelObject *p = (SndChannelObject *)_res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
348 p->ob_itself->userInfo = (long)p;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
349 Py_INCREF(userRoutine);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
350 p->ob_callback = userRoutine;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
351 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
352 userRoutine__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
353 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
354 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
355
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
356 static PyObject *Snd_SndControl(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
357 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
358 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
359 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
360 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
361 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
362 short id;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
363 SndCommand cmd;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
364 if (!PyArg_ParseTuple(_args, "h",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
365 &id))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
366 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
367 _err = SndControl(id,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
368 &cmd);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
369 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
370 _res = Py_BuildValue("O&",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
371 SndCmd_New, &cmd);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
372 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
373 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
374
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
375 static PyObject *Snd_SndSoundManagerVersion(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
376 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
377 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
378 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
379 PyObject *_res = NULL;
3915
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
380 NumVersion _rv;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
381 if (!PyArg_ParseTuple(_args, ""))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
382 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
383 _rv = SndSoundManagerVersion();
3915
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
384 _res = Py_BuildValue("O&",
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
385 PyMac_BuildNumVersion, _rv);
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
386 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
387 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
388
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
389 static PyObject *Snd_SndManagerStatus(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
390 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
391 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
392 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
393 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
394 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
395 short theLength;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
396 SMStatus theStatus__out__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
397 if (!PyArg_ParseTuple(_args, "h",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
398 &theLength))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
399 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
400 _err = SndManagerStatus(theLength,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
401 &theStatus__out__);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
402 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
403 _res = Py_BuildValue("s#",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
404 (char *)&theStatus__out__, (int)sizeof(SMStatus));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
405 theStatus__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
406 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
407 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
408
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
409 static PyObject *Snd_SndGetSysBeepState(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
410 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
411 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
412 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
413 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
414 short sysBeepState;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
415 if (!PyArg_ParseTuple(_args, ""))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
416 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
417 SndGetSysBeepState(&sysBeepState);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
418 _res = Py_BuildValue("h",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
419 sysBeepState);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
420 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
421 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
422
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
423 static PyObject *Snd_SndSetSysBeepState(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
424 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
425 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
426 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
427 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
428 OSErr _err;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
429 short sysBeepState;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
430 if (!PyArg_ParseTuple(_args, "h",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
431 &sysBeepState))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
432 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
433 _err = SndSetSysBeepState(sysBeepState);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
434 if (_err != noErr) return PyMac_Error(_err);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
435 Py_INCREF(Py_None);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
436 _res = Py_None;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
437 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
438 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
439
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
440 static PyObject *Snd_MACEVersion(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
441 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
442 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
443 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
444 PyObject *_res = NULL;
3915
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
445 NumVersion _rv;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
446 if (!PyArg_ParseTuple(_args, ""))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
447 return NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
448 _rv = MACEVersion();
3915
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
449 _res = Py_BuildValue("O&",
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
450 PyMac_BuildNumVersion, _rv);
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
451 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
452 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
453
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
454 static PyObject *Snd_Comp3to1(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
455 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
456 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
457 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
458 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
459 char *buffer__in__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
460 char *buffer__out__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
461 long buffer__len__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
462 int buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
463 StateBlock *state__in__;
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
464 StateBlock state__out__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
465 int state__in_len__;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
466 unsigned long numChannels;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
467 unsigned long whichChannel;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
468 if (!PyArg_ParseTuple(_args, "s#s#ll",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
469 &buffer__in__, &buffer__in_len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
470 (char **)&state__in__, &state__in_len__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
471 &numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
472 &whichChannel))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
473 return NULL;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
474 if ((buffer__out__ = malloc(buffer__in_len__)) == NULL)
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
475 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
476 PyErr_NoMemory();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
477 goto buffer__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
478 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
479 buffer__len__ = buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
480 if (state__in_len__ != sizeof(StateBlock))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
481 {
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
482 PyErr_SetString(PyExc_TypeError, "buffer length should be sizeof(StateBlock)");
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
483 goto state__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
484 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
485 Comp3to1(buffer__in__, buffer__out__, (long)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
486 state__in__, &state__out__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
487 numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
488 whichChannel);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
489 _res = Py_BuildValue("s#s#",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
490 buffer__out__, (int)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
491 (char *)&state__out__, (int)sizeof(StateBlock));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
492 state__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
493 free(buffer__out__);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
494 buffer__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
495 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
496 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
497
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
498 static PyObject *Snd_Exp1to3(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
499 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
500 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
501 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
502 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
503 char *buffer__in__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
504 char *buffer__out__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
505 long buffer__len__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
506 int buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
507 StateBlock *state__in__;
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
508 StateBlock state__out__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
509 int state__in_len__;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
510 unsigned long numChannels;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
511 unsigned long whichChannel;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
512 if (!PyArg_ParseTuple(_args, "s#s#ll",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
513 &buffer__in__, &buffer__in_len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
514 (char **)&state__in__, &state__in_len__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
515 &numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
516 &whichChannel))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
517 return NULL;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
518 if ((buffer__out__ = malloc(buffer__in_len__)) == NULL)
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
519 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
520 PyErr_NoMemory();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
521 goto buffer__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
522 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
523 buffer__len__ = buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
524 if (state__in_len__ != sizeof(StateBlock))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
525 {
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
526 PyErr_SetString(PyExc_TypeError, "buffer length should be sizeof(StateBlock)");
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
527 goto state__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
528 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
529 Exp1to3(buffer__in__, buffer__out__, (long)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
530 state__in__, &state__out__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
531 numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
532 whichChannel);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
533 _res = Py_BuildValue("s#s#",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
534 buffer__out__, (int)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
535 (char *)&state__out__, (int)sizeof(StateBlock));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
536 state__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
537 free(buffer__out__);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
538 buffer__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
539 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
540 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
541
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
542 static PyObject *Snd_Comp6to1(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
543 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
544 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
545 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
546 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
547 char *buffer__in__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
548 char *buffer__out__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
549 long buffer__len__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
550 int buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
551 StateBlock *state__in__;
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
552 StateBlock state__out__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
553 int state__in_len__;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
554 unsigned long numChannels;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
555 unsigned long whichChannel;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
556 if (!PyArg_ParseTuple(_args, "s#s#ll",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
557 &buffer__in__, &buffer__in_len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
558 (char **)&state__in__, &state__in_len__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
559 &numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
560 &whichChannel))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
561 return NULL;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
562 if ((buffer__out__ = malloc(buffer__in_len__)) == NULL)
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
563 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
564 PyErr_NoMemory();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
565 goto buffer__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
566 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
567 buffer__len__ = buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
568 if (state__in_len__ != sizeof(StateBlock))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
569 {
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
570 PyErr_SetString(PyExc_TypeError, "buffer length should be sizeof(StateBlock)");
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
571 goto state__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
572 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
573 Comp6to1(buffer__in__, buffer__out__, (long)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
574 state__in__, &state__out__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
575 numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
576 whichChannel);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
577 _res = Py_BuildValue("s#s#",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
578 buffer__out__, (int)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
579 (char *)&state__out__, (int)sizeof(StateBlock));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
580 state__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
581 free(buffer__out__);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
582 buffer__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
583 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
584 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
585
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
586 static PyObject *Snd_Exp1to6(_self, _args)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
587 PyObject *_self;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
588 PyObject *_args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
589 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
590 PyObject *_res = NULL;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
591 char *buffer__in__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
592 char *buffer__out__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
593 long buffer__len__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
594 int buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
595 StateBlock *state__in__;
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
596 StateBlock state__out__;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
597 int state__in_len__;
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
598 unsigned long numChannels;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
599 unsigned long whichChannel;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
600 if (!PyArg_ParseTuple(_args, "s#s#ll",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
601 &buffer__in__, &buffer__in_len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
602 (char **)&state__in__, &state__in_len__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
603 &numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
604 &whichChannel))
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
605 return NULL;
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
606 if ((buffer__out__ = malloc(buffer__in_len__)) == NULL)
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
607 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
608 PyErr_NoMemory();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
609 goto buffer__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
610 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
611 buffer__len__ = buffer__in_len__;
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
612 if (state__in_len__ != sizeof(StateBlock))
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
613 {
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
614 PyErr_SetString(PyExc_TypeError, "buffer length should be sizeof(StateBlock)");
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
615 goto state__error__;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
616 }
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
617 Exp1to6(buffer__in__, buffer__out__, (long)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
618 state__in__, &state__out__,
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
619 numChannels,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
620 whichChannel);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
621 _res = Py_BuildValue("s#s#",
2398
cabb7c5732ef another round... ported to __SC__
Guido van Rossum <guido@python.org>
parents: 2282
diff changeset
622 buffer__out__, (int)buffer__len__,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
623 (char *)&state__out__, (int)sizeof(StateBlock));
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
624 state__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
625 free(buffer__out__);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
626 buffer__error__: ;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
627 return _res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
628 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
629
2721
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
630 static PyObject *Snd_GetSysBeepVolume(_self, _args)
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
631 PyObject *_self;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
632 PyObject *_args;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
633 {
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
634 PyObject *_res = NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
635 OSErr _err;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
636 long level;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
637 if (!PyArg_ParseTuple(_args, ""))
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
638 return NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
639 _err = GetSysBeepVolume(&level);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
640 if (_err != noErr) return PyMac_Error(_err);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
641 _res = Py_BuildValue("l",
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
642 level);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
643 return _res;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
644 }
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
645
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
646 static PyObject *Snd_SetSysBeepVolume(_self, _args)
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
647 PyObject *_self;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
648 PyObject *_args;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
649 {
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
650 PyObject *_res = NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
651 OSErr _err;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
652 long level;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
653 if (!PyArg_ParseTuple(_args, "l",
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
654 &level))
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
655 return NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
656 _err = SetSysBeepVolume(level);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
657 if (_err != noErr) return PyMac_Error(_err);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
658 Py_INCREF(Py_None);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
659 _res = Py_None;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
660 return _res;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
661 }
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
662
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
663 static PyObject *Snd_GetDefaultOutputVolume(_self, _args)
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
664 PyObject *_self;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
665 PyObject *_args;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
666 {
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
667 PyObject *_res = NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
668 OSErr _err;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
669 long level;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
670 if (!PyArg_ParseTuple(_args, ""))
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
671 return NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
672 _err = GetDefaultOutputVolume(&level);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
673 if (_err != noErr) return PyMac_Error(_err);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
674 _res = Py_BuildValue("l",
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
675 level);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
676 return _res;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
677 }
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
678
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
679 static PyObject *Snd_SetDefaultOutputVolume(_self, _args)
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
680 PyObject *_self;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
681 PyObject *_args;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
682 {
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
683 PyObject *_res = NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
684 OSErr _err;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
685 long level;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
686 if (!PyArg_ParseTuple(_args, "l",
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
687 &level))
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
688 return NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
689 _err = SetDefaultOutputVolume(level);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
690 if (_err != noErr) return PyMac_Error(_err);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
691 Py_INCREF(Py_None);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
692 _res = Py_None;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
693 return _res;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
694 }
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
695
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
696 static PyObject *Snd_GetSoundHeaderOffset(_self, _args)
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
697 PyObject *_self;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
698 PyObject *_args;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
699 {
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
700 PyObject *_res = NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
701 OSErr _err;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
702 SndListHandle sndHandle;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
703 long offset;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
704 if (!PyArg_ParseTuple(_args, "O&",
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
705 ResObj_Convert, &sndHandle))
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
706 return NULL;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
707 _err = GetSoundHeaderOffset(sndHandle,
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
708 &offset);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
709 if (_err != noErr) return PyMac_Error(_err);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
710 _res = Py_BuildValue("l",
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
711 offset);
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
712 return _res;
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
713 }
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
714
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
715 static PyMethodDef Snd_methods[] = {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
716 {"SndNewChannel", (PyCFunction)Snd_SndNewChannel, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
717 "(short synth, long init, PyObject* userRoutine) -> (SndChannelPtr chan)"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
718 {"SndControl", (PyCFunction)Snd_SndControl, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
719 "(short id) -> (SndCommand cmd)"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
720 {"SndSoundManagerVersion", (PyCFunction)Snd_SndSoundManagerVersion, 1,
3915
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
721 "() -> (NumVersion _rv)"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
722 {"SndManagerStatus", (PyCFunction)Snd_SndManagerStatus, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
723 "(short theLength) -> (SMStatus theStatus)"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
724 {"SndGetSysBeepState", (PyCFunction)Snd_SndGetSysBeepState, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
725 "() -> (short sysBeepState)"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
726 {"SndSetSysBeepState", (PyCFunction)Snd_SndSetSysBeepState, 1,
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
727 "(short sysBeepState) -> None"},
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
728 {"MACEVersion", (PyCFunction)Snd_MACEVersion, 1,
3915
341146100f38 NumVersion stuff has changed
Jack Jansen <jack.jansen@cwi.nl>
parents: 3518
diff changeset
729 "() -> (NumVersion _rv)"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
730 {"Comp3to1", (PyCFunction)Snd_Comp3to1, 1,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
731 "(Buffer buffer, StateBlock state, unsigned long numChannels, unsigned long whichChannel) -> (Buffer buffer, StateBlock state)"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
732 {"Exp1to3", (PyCFunction)Snd_Exp1to3, 1,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
733 "(Buffer buffer, StateBlock state, unsigned long numChannels, unsigned long whichChannel) -> (Buffer buffer, StateBlock state)"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
734 {"Comp6to1", (PyCFunction)Snd_Comp6to1, 1,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
735 "(Buffer buffer, StateBlock state, unsigned long numChannels, unsigned long whichChannel) -> (Buffer buffer, StateBlock state)"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
736 {"Exp1to6", (PyCFunction)Snd_Exp1to6, 1,
2723
a0fc94b3bb21 Ported to Universal Header 2.0.1f (i.e. CW6)
Jack Jansen <jack.jansen@cwi.nl>
parents: 2721
diff changeset
737 "(Buffer buffer, StateBlock state, unsigned long numChannels, unsigned long whichChannel) -> (Buffer buffer, StateBlock state)"},
2721
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
738 {"GetSysBeepVolume", (PyCFunction)Snd_GetSysBeepVolume, 1,
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
739 "() -> (long level)"},
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
740 {"SetSysBeepVolume", (PyCFunction)Snd_SetSysBeepVolume, 1,
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
741 "(long level) -> None"},
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
742 {"GetDefaultOutputVolume", (PyCFunction)Snd_GetDefaultOutputVolume, 1,
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
743 "() -> (long level)"},
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
744 {"SetDefaultOutputVolume", (PyCFunction)Snd_SetDefaultOutputVolume, 1,
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
745 "(long level) -> None"},
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
746 {"GetSoundHeaderOffset", (PyCFunction)Snd_GetSoundHeaderOffset, 1,
364d4a524cec Trying again to check it in. Changes to:
Jack Jansen <jack.jansen@cwi.nl>
parents: 2399
diff changeset
747 "(SndListHandle sndHandle) -> (long offset)"},
2267
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
748 {NULL, NULL, 0}
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
749 };
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
750
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
751
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
752
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
753 /* Routine passed to Py_AddPendingCall -- call the Python callback */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
754 static int
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
755 SndCh_CallCallBack(arg)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
756 void *arg;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
757 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
758 SndChannelObject *p = (SndChannelObject *)arg;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
759 PyObject *args;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
760 PyObject *res;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
761 args = Py_BuildValue("(O(hhl))",
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
762 p, p->ob_cmd.cmd, p->ob_cmd.param1, p->ob_cmd.param2);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
763 res = PyEval_CallObject(p->ob_callback, args);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
764 Py_DECREF(args);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
765 if (res == NULL)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
766 return -1;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
767 Py_DECREF(res);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
768 return 0;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
769 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
770
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
771 /* Routine passed to NewSndChannel -- schedule a call to SndCh_CallCallBack */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
772 static pascal void
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
773 SndCh_UserRoutine(SndChannelPtr chan, SndCommand *cmd)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
774 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
775 SndChannelObject *p = (SndChannelObject *)(chan->userInfo);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
776 if (p->ob_callback != NULL) {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
777 long A5 = SetA5(p->ob_A5);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
778 p->ob_cmd = *cmd;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
779 Py_AddPendingCall(SndCh_CallCallBack, (void *)p);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
780 SetA5(A5);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
781 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
782 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
783
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
784
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
785 void initSnd()
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
786 {
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
787 PyObject *m;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
788 PyObject *d;
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
789
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
790
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
791
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
792
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
793
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
794 m = Py_InitModule("Snd", Snd_methods);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
795 d = PyModule_GetDict(m);
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
796 Snd_Error = PyMac_GetOSErrException();
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
797 if (Snd_Error == NULL ||
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
798 PyDict_SetItemString(d, "Error", Snd_Error) != 0)
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
799 Py_FatalError("can't initialize Snd.Error");
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
800 }
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
801
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
802 /* ========================= End module Snd ========================= */
7411b6a06920 Committed a more or less working version.
Guido van Rossum <guido@python.org>
parents:
diff changeset
803