IVE Programming Interfaces

The IVE environment provides six programming interfaces in FORTRAN and C for developing applications to extend IVE's capabilities. There's also a Python interface for working with image data. The interfaces have changed (generally in a backwardly compatible fashion) over time. The example programs listed are all included in the EXAMPLE subdirectory of the IVE distribution. That same directory includes a makefile. For IVE 4, follow the instructions at the start of the makefile to adjust it for your system.

Manipulating IVE image data: IM library

Image data is stored in a standard format and can be manipulated with the IM functions from C and FORTRAN. Depending on how a program is linked, the IM functions can also transparently work with image data files and display windows. From Python, image files can be manipulated with the module described in http://msg.ucsf.edu/IVE/IVE4_HTML/Mrcpy.html.

Interacting with image display windows: IW library

In addition to the IM routines which work with both files and display windows, the IW routines provide operations that can only be applied to image windows.

Creating graphical user interfaces: WM library

Rapid development of interactive applications: IP framework

The IP framework supplies a skeleton image processing program using the IM, IW, and WM libraries which the programmer can customize. Because the skeleton program can handle all of the I/O and many aspects of the user interface, using the IP framework can speed up development.

Wrapping command-line applications with a graphical interface: IOMENU utility

The IOMENU utility facilitates writing a graphical user interface wrapper in C or C++ for a command line application.

Utilities for implementing libraries: IVE library

To assist with the development of IVE 4, a set of routines were written to handle shared memory and encapsulate some operating system differences. A reference guide exists but is likely only of interest if you are maintaining the other Priism libraries.

Object Library

IVE 3.3 includes a library used by some applications for modeling the structures in data. To ease porting applications from IVE 3.3, IVE 4.2.3 and later include a version of the object library; the documentation for that library is at http://msg.ucsf.edu/IVE/IVE4_HTML/IWGrObj.html.

Priism/IVE home page | Porting | Sample applications |

modified January 19, 2018

IVE Development Team (ive-web@msg.ucsf.edu)
Macromolecular Structure Group, UCSF (http://msg.ucsf.edu)