Project

General

Profile

Leginon Developer Guide » History » Revision 3

Revision 2 (Jim Pulokas, 03/04/2011 11:30 AM) → Revision 3/23 (Anchi Cheng, 11/18/2011 01:53 PM)

h1. Leginon Developer Guide 

 h2. Brief description of some of the core code components 

 * *leginondata.py* and *event.py* contain the definitions of all classes of data that are passed around between nodes and/or stored in the database. 
 * *node.py* defines *Node*, the base class for all nodes.    You will find a lot of the basic node functionality here, like passing events, storing user preferences, etc. 

 h2. Brief description of some of the nodes 

 * *targetwatcher.py* defines the class *TargetWatcher* which includes basic functionality for processing targets that were produced by another node.    The input is target list, which is handled by the *processTargetListData* method.    This method loops over the targets, calling *processTargetData* on each one.    The *processTargetData* method must be defined in a subclass. 
 * *acquisition.py* defines the *Acquisition* class, which is a subclass of *TargetWatcher*.    It defines the *processTargetData* function such that an acquisition sequence happens at each target.    More info, see: [[acquisition.py]] 

 h2. Useful diagonosis scripts 

 * [[testing pyscope instrument]] functions.