summaryrefslogtreecommitdiffstats
path: root/Tools/bgen/README
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/bgen/README')
-rw-r--r--Tools/bgen/README79
1 files changed, 79 insertions, 0 deletions
diff --git a/Tools/bgen/README b/Tools/bgen/README
new file mode 100644
index 0000000..4c1e9f4
--- /dev/null
+++ b/Tools/bgen/README
@@ -0,0 +1,79 @@
+BGEN -- An Experiment: Automatic Generation of Extension Modules
+================================================================
+
+This directory contains BGEN -- a package that helps in generating
+complete source code for Python extension module. It currently also
+contains a set of examples that were generated with BGEN. These
+examples are mostly interfaces to a number of important managers in
+the Macintosh toolbox.
+
+
+Overview of Subdirectories
+--------------------------
+
+Main subdirectories:
+
+bgen the code generator package
+
+Example subdirectories:
+
+ae AppleEvents
+ctl Controls
+dlg Dialogs
+evt Events
+menu Menus
+qd QuickDraw
+res Resources
+snd Sound
+win Windows
+
+
+Contents of Subdirectories
+--------------------------
+
+The contents of each example subdirectory is similar (<Foobar> is
+for instance AppleEvents, while <foo> is ae):
+
+<foo>scan.py Scan the <Foobar>.h header, generating <foo>gen.py
+<foo>gen.py Output of <foo>scan.py, input for <foo>support.py
+<foo>edit.py Manually written complement of <foo>gen.py, sometimes
+<foo>support.py Generate <Foo>module.c from <foo>gen.py and <foo>edit.py
+<Foo>module.c The interface module, ready to be compiled
+<Foobar>.py Symbolic constants extracted from <Foobar.h>
+
+
+Tests and Examples
+------------------
+
+Other files in these subdirectories are usually examples using the
+extension. If there's a file t<foo>.py, it usually is a really
+boring test program.
+
+Some test programs contain pathnames that should be edited before
+trying them.
+
+Some of the less boring tests and examples:
+
+At the top level:
+
+test.py Application mainloop, uses most Mac extensions
+
+In ae:
+
+aetools.py Conversions between AE and Python data type
+echo.py Dummy AE server, echoes all data back
+tell.py Primitive AE client
+aete.py Decode 'aete' and 'aeut' resources (incomplete)
+
+In res:
+
+listres.py List *all* resources in current and in all res files
+copyres.py Copy a resource file
+mkerrstrres.py Read "errors.txt" and create a set of "Estr" resources
+
+In snd:
+
+playaiff.py Play an AIFF file
+morse.py Turn text into Morse code
+audiodev.py The standard audiodev.py extended with Mac support
+Audio_mac.py The Mac support for audiodev.py