| 38 | |
| 39 | === Local Tool Database Metadata === |
| 40 | * name |
| 41 | * synopsis |
| 42 | * icon |
| 43 | * file type(s) support (suffix and mime type) |
| 44 | * tool category |
| 45 | * command prefix word |
| 46 | * PMID(s) |
| 47 | * authors |
| 48 | * website |
| 49 | * institution |
| 50 | * version |
| 51 | * installed boolean |
| 52 | * enabled boolean |
| 53 | * startup boolean |
| 54 | |
| 55 | === Toolshed Functionality === |
| 56 | 1. populate commands |
| 57 | 2. populate I/O formats |
| 58 | 3. populate menus |
| 59 | |
| 60 | === Proposed App Startup === |
| 61 | 1. initial program/script that |
| 62 | * updates environment to not affect embedded python |
| 63 | * starts up embedded python with application initialization module |
| 64 | 2. application initialization module: |
| 65 | * parses command line arguments |
| 66 | * monkey patch python to restore original environment if calling outside program |
| 67 | * make sure HOME environment variable is set |
| 68 | * --send: pass arguments to already chimera and exit |
| 69 | * if have GUI, display splash screen |
| 70 | * diagnostic output and exit, e.g., --version |
| 71 | * basic initialization |
| 72 | * additional startup tool initialization |
| 73 | * open models and run scripts given on command line |
| 74 | * start event loop |