The Plugin Interface
The plugin interface opens custom access to internal data during real-time processing including information of ROIs, design matrix, (preprocessed) raw data and statistical information including the content of the design matrix, beta maps and contrast t maps. This allows to perform additional calculations within the plugin and/or to export data for external processing, e.g. in Matlab. The plugin interface also allows to visualize calculated maps on slices, volumes and surfaces in the same way as the standard GLM contrast maps.
Note that for maximum efficiency the API provides direct pointers to internal data structures without any "buffering" in between. The source code for the two plugins is included with this release allowing to quickly learn about the provided API functions. The "TBVPluginInterface.h" file lists all available commands for which a detailed description will be available soon.
A plugin needs to be coded in C++. Available templates and examples allows for simple creation of own plugins requiring only to fill-in one (or more) "execute" functions and to customize a few C functions used to interrogate plugin information such as its display name. The main task of the plugin coder consists in adding code to the "executePostStep()" function that is called at each time point during real-time processing.
The next topic describes how to use implemented plugins from TBV; then it is described when and how TBV calls a selected plugin before, during and after real-time processing; this information is helpful to learn how to write the called plugin functions.
Copyright © 2014 Rainer Goebel. All rights reserved.