3.1 Overview
BayES is designed to perform some very specific tasks and it recognizes that there could be other software packages available that are more appropriate for other types of tasks. Instead of trying to do everything by itself, BayES provides interfaces to these packages to facilitate communication. This is achieved by means of software-specific interface functions, which allow the user to pass data and native code to, execute scripts in and retrieve results from each package, without ever leaving the BayES environment.
When an interface function is called in BayES, control passes to the respective software package, which starts executing the code provided by the user in the package’s native language. Once execution completes, control passes back to BayES. Depending on the particular software package, any output produced by it will be printed on the BayES console, either in real time or after execution of the external program completes. External programs to which BayES provides interfaces must be separately installed on the machine on which BayES is currently used. Furthermore, the locations of executable/binary files of these external software packages must be known to BayES.1
BayES interface functions pass data to and retrieve results from external processes by writing temporary files in the current working directory. Upon successful completion of the external program, these files are deleted. Therefore, the user should have write access to the current working directory for the interface functions to work. |