BrainWorks is CIS's image viewing, processing, and analysis software program. It performs a number of complex and powerful tasks on image data. Currently these tasks can only be performed manually by initiating them from the GUI. It would be desirable to add some form of batch mode processing to BrainWorks so that repetitive research tasks can be performed according to a script created by the researcher, and the results of each task saved for verification by the researcher when the processing is complete.
An initial effort in this direction has already been made at CIS, in which a single processing task is isolated, and a separate program is written, compiled, and executed to perform the task. Those efforts reside on the CIS file system under /cis/project/bwwrap.
This approach has provided researchers with the capability to perform BrainWorks functionality outside of the GUI, and, by writing shell scripts, some BrainWorks scripting capability has been effected. A list of the functions that have been encapsulated in this way can be seen here.
The development approach to building these command line programs has been to copy into a separate directory as much of the standard BrainWorks source code as necessary for the desired functionality, create a new main program that loads files into image objects and performs the desired operation, write a new make file, then build all the necessary code into a new module. Needless to say the continued replication of applicable BrainWorks source code is not the most efficient way to develop new scripting capability, not to mention the configuration nightmare created by many copies of the same source.
A more effective means of providing this functionality would be to build scriptability directly into BrainWorks. Two means of scripting should be available to BrainWorks users:
The following needs to be added to BrainWorks to implement scriptability:
Future enhancements to scripting capability will include