developer session #3 ncrr advanced scirun/biopse elements: guis, core libs, contributions &...

16
Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Upload: daniella-jennings

Post on 14-Dec-2015

231 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Advanced SCIRun/BioPSE Elements: GUIs, Core Libs,

Contributions & Support

Advanced SCIRun/BioPSE Elements: GUIs, Core Libs,

Contributions & Support

Page 2: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

GUIsGUIs

Expose variables

Visual feedback

Module/UI

synchronization•GuiVar• tcl interpreter

$this-c [args]

Page 3: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

ThreadsThreads

Intra-, inter-module parallelism

Architecture independent• pthreads• sgi threads

Inter-thread communication•mutex, barrier, mailbox

Easy to allocate/launch

Page 4: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Persistent I/O (“Pio”)Persistent I/O (“Pio”)

Read/write C++ classesRecursively descend classesFix pointersVersioning for backward

compatabilityXDR for architecture independenceNot meant to be human-edited… no

fault-tolerance!

Page 5: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Namespaces, STLNamespaces, STL

Each Package defines its own namespace: e.g. SCIRun, BioPSE

STL used for maps, vectors, strings

iostream: std::cerr (not iostream.h)

Page 6: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Contributing PatchesContributing Patches

Bugzilla

Open a bug report

Return to bug report, submit attachment

Preferable to emailing scirun-develop!

Page 7: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Contributing ModulesContributing Modules

Same as patch, but also need…

1) Design spec (in XML file)

2) Documentation (can be in XML)

3) Validation net

4) Validation datasets

Non-conflicting license

May appear in our next code release

Page 8: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

DocumentationDocumentation

http://internal.sci.utah.edu/developer/doc/

Page 9: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Developer SupportDeveloper Support

Documentation• Programmer’s Guide• Module descriptions• Online code views• FAQ

Mailing ListDirect Contact• Email and Bugzilla• Network meetings (Access Grid)

Page 10: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Installation SupportInstallation Support

Documentation• Quick Start• Installation Guide• Third party packages• FAQ

Mailing ListDirect Contact• Email and Bugzilla

Page 11: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Internal ManagementInternal Management

Masterplan•Procedures and content•Module writing guide•Dynamic document

Technical Production•LaTeX, HTML, XML•Support for content providers•Online and paper forms

Page 12: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

MasterplanMasterplan

•Roadmap•Status report•Dynamic links

Page 13: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Technical ProductionTechnical Production

XML

HTML

PDF

LaTeX

Existing Tools• LaTeX, latex2html,

DocBook (XML)

New Tools• XML DTDs,

automation

Content Generation• Voice

recording/recognition• Technical writer

Page 14: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

External SupportExternal Support

NCRR documentation website•Updated daily

Downloaded documentation• Linked to installed release•Web based and printable docs

Submitting new documentation•Required for module submission

Page 15: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Submitting New DocsSubmitting New Docs

Format• XML- required for each module- can include complete description- template available, validation soon

• LaTeX- can include complete description- template available

Page 16: Developer Session #3 NCRR Advanced SCIRun/BioPSE Elements: GUIs, Core Libs, Contributions & Support

Developer Session #3

NCRRNCRR

Making DocsMaking 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