Luciano,
[I'm sure this question would be best answered by Warren, but with that
as disclaimer... :-) ]
It depends on what exactly you mean by "structure of the program"...
From a user point of view, you can gain some useful insight into the
structure of PyMOL from some of the sections in the User's Manual
(http://pymol.sourceforge.net/newman/user/toc.html) and the Reference
Manual (http://pymol.sourceforge.net/newman/ref/toc.html). For example,
the sections in the User's Manual which explain Atom Selection Macros
(http://pymol.sourceforge.net/newman/user/S0220commands.html#7_1_6),
creation of Compiled Graphics Objects
(http://pymol.sourceforge.net/newman/user/S0500cgo.html#14_3), etc.
provide a slightly more detailed hint at the inner working/structure of
PyMOL. Likewise, the "PYMOL API" entries for various commands in the
Reference Manual serve as a starting point for understanding PyMOL's
Python layer, writing python modules to interface with pymol, etc.
From a programmer point of view, probably the most useful sources of
information are (i) the various INSTALL, README, PACKAGING, DEVELOPERS,
etc. files which are located in the top-level pymol dir, and (ii) the
source code itself :-) . Snoop around in the layer*/ include
directories for the C-level code, and look around in dirs like
modules/pymol, modules/chempy, etc. for Python-level code; see the
various Makefiles (Rules.make) to understand how it's all tied together
during compilation. Roughly speaking, lower-level functionalities
(e.g,. memory caching, vector ops, etc.) are implemented in
lower-numbered layers (e.g., layer0/Vector.*), while code for
higher-level features (e.g., glut-related stuff, pymol python objects,
etc.) is in the higher-numbered layers (e.g., layer4/Menu.*).
Good luck,
Cameron
=== pymol-users-requ...@lists.sourceforge.net wrote (on 10/30/2004 08:58
PM): ===
Subject:
[PyMOL] Easy question
From:
Luciano Abriata <luciano_abri...@yahoo.com>
Date:
Sat, 30 Oct 2004 07:50:43 -0700 (PDT)
To:
pymol-users@lists.sourceforge.net
Hi PyMOL comunity,
The answer to my question should be rather easy, I
guess:
Is there any document explaining which is the
structure of the program?
OK, thank you all
Luciano
--
Cameron Mura
UCSD