How to write an OSSIM plugin
The basic concept described here applies to a filter type plugin which :
- Takes an image/raster tile
- Applies some spatial/spectral operator to it
- Returns a result tile
The plugin demonstrated here is the CFAR plugin found in ossim_plugins contrib folder. This plugin was built in the following stages:
- Copy the sample code from ossim/src/examples/shared/image_filters to a folder under ossim_plugins, contrib is a good choice.
- Edit the Filtering method, runUcharTransformation in the example method with required algorithm.
- The required algorithm is in effect a couple of convolutions, hence the ossim3x3convolution filter was extended to implement this.
- Write additional house keeping code:
- Load and save states for saving the chains from VCE and copy pasting.
- Property setter-getters to modify the filter on the fly via the Properties dialog.
All plugin code must be registered via a factory class to the Ossim Core. In the contrib folder there is a contrib plugin registry(ossimContrinPluginFactory.cpp) to which smaller plugins can be registered.