===== File Formats and Protocols ===== * The x0xb0x PatternFileFormat * The x0xb0x SerialProtocol ===== Application Internals ===== * Main Structure * [[Globals]] - Contants and globals, and 2 functions hexToSignedInt and opj (which should be renamed) * [[main]] - The main window, sets up the ModelViewController. Taken from someones standard lib. * [[model]] - Very high level routines to talk to the serial * [[view]] - Handles the actual GUI * [[controller]] - performs application initialization (and teardown?) * Abstracts and higher level * [[communication]] - Handles x0xb0x <-> python communication through the DataLink class * NotificationCenter - Implementation of an onbserver * Data Definition * IntelHexFormat - Fileformat for saving and loading of patterns... (?) * DataFidelity - Is what it is. Handles CRC Checking * [[pattern]] - Contains Pattern and Note classes. See PatternFormat and NoteFormat * [[packet]] - Class to buld a packet, with proper CRC tacked on the end * Communication * AvrProgram - AVR Programmer, mostly for reporgraming the microcrontroller via the bootloader (?) * [[communication]] - Handles x0xb0x <-> python communication through the DataLink class * GUI * PatternEditGrid - Rendering and Event Handling for Pattern Editing * PatternPlayGrid - Rendering and Event Handling for Pattern Playing * GraphicalInterface - handles the actual GUI * [[view]] - Handles the actual GUI I'll also be doing a [[wiki>SignatureSurvey]] of the code pretty soon.