= 18 September 2014 meeting = == Attendees == Greg, Eric, Conrad, TomG == Agenda == Presentation of Hydra architecture and migration path == Action Items == Conrad: Propose Toolshed and Tools APIs Greg: Propose Session and Application APIs Eric: Continue wx ui implementation. TomG: Continue ambient occlusion implementation == Results == [http://www.cgl.ucsf.edu/chimera/data/hydra-sep2014/hydraarch.html Hydra architecture and migration path slides] **Session object**. TomG explained Hydra Session object that holds all application global state. **Circular references**. Discussed the advantages of avoiding circular dependencies between Chimera 2 modules. Previously Scooter advocated this saying Cytoscape modules have a dependency graph that is a tree and communicating to a module that is not a dependent is only done by quequeing events. Eric and TomG did not understand the value of this. Requires further discussion, maybe with Scooter. **Application class**. Conrad suggested current Hydra Session be divided into an Application class and a Session class where the latter stores global state and the former initializes that state at start-up. This will allow code for different application start-up modes (e.g. nogui vs gui) to be cleanly separated. **Migration path**. Discussed migration path from Hydra to a Chimera 2 release. Conrad suggests that APIs for Session, Application, ToolShed and Tools to establish the framework is an immediate need, even if such APIs are only for in-lab developers after an initial release.