160 likes | 172 Views
This documentation covers the advanced features of SCIRun/BioPSE, including GUIs, core libraries, contributions, and support for developers. It provides information on GUI elements, module synchronization, thread communication, persistent I/O, namespaces, contributing patches/modules, developer support, installation support, internal management, technical production, and external support.
E N D
Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support
GUIs • Expose variables • Visual feedback • Module/UI • synchronization • GuiVar • tcl interpreter • $this-c [args]
Threads • Intra-, inter-module parallelism • Architecture independent • pthreads • sgi threads • Inter-thread communication • mutex, barrier, mailbox • Easy to allocate/launch
Persistent I/O (“Pio”) • Read/write C++ classes • Recursively descend classes • Fix pointers • Versioning for backward compatability • XDR for architecture independence • Not meant to be human-edited… no fault-tolerance!
Namespaces, STL • Each Package defines its own namespace: e.g. SCIRun, BioPSE • STL used for maps, vectors, strings • iostream: std::cerr (not iostream.h)
Contributing Patches • Bugzilla • Open a bug report • Return to bug report, submit attachment • Preferable to emailing scirun-develop!
Contributing Modules • Same as patch, but also need… • Design spec (in XML file) • Documentation (can be in XML) • Validation net • Validation datasets • Non-conflicting license • May appear in our next code release
Documentation http://internal.sci.utah.edu/developer/doc/
Developer Support • Documentation • Programmer’s Guide • Module descriptions • Online code views • FAQ • Mailing List • Direct Contact • Email and Bugzilla • Network meetings (Access Grid)
Installation Support • Documentation • Quick Start • Installation Guide • Third party packages • FAQ • Mailing List • Direct Contact • Email and Bugzilla
Internal Management • Masterplan • Procedures and content • Module writing guide • Dynamic document • Technical Production • LaTeX, HTML, XML • Support for content providers • Online and paper forms
Masterplan • Roadmap • Status report • Dynamic links
Technical Production • Existing Tools • LaTeX, latex2html, DocBook (XML) • New Tools • XML DTDs, automation • Content Generation • Voice recording/recognition • Technical writer XML LaTeX HTML PDF
External Support • NCRR documentation website • Updated daily • Downloaded documentation • Linked to installed release • Web based and printable docs • Submitting new documentation • Required for module submission
Submitting New Docs • Format • XML • required for each module • can include complete description • template available, validation soon • LaTeX • can include complete description • template available
Making Docs • Merged at doc generation time • XML and LaTeX are sources (not HTML!) • printed documentation • web documentation • Tools (soon available) • validation of XML and LaTeX • Convert XML to HTML and TeX • Convert LaTeX to HTML • LaTeX/TeX to printed documents