Programmer APIEmpty

An application programmers interface exists to allow the construction of user written collaborative modules. These modules can then operate within the COVISA framework in the same way as any other collaborative module. All of the collaborative data sharing modules supplied with this release use this library, and their source code can be found in $EXPLORERHOME/src, where $EXPLORERHOME is the root directory of the installed IRIS Explorer tree. Some annotated source code is available.

To compile a collaborative module, you must select Collaborative under Module->Options... within Module Builder.  You must write your collaborative code in C++; this may of course be combined with other code written in C or Fortran.

COVISA collaboration class for IRIS Explorer

Name

cxCollab - collaboration class library.

Synopsis

#include <cx/cxCollab.h>

Constructor and Destructor from class cxCollab:

Methods from class cxCollab:

Register ports to be managed: Inquiry functions: Set/Send/Delete data from receiver objects: Get Data:

Description

This class is used to make IRIS Explorer modules collaboratively aware. It allows them to share any of the internal datatypes of IRIS Explorer between separate instances of the visualization system.

Constructors

cxCollab(void);

Methods

int portRegister(char *name, int portType, int dataType); int portRegister(int numPorts, char **names, int *portTypes, int *dataTypes); void checkWidgets(void); int isConnected(void); int newData(char *name); int setData(char *name, void *ptr); int sendData(char *name); int sendData(int numPorts, char **names); void clearData(char *name); cxLattice * getLattice(char *name); cxParameter * getParameter(char *name); cxPyramid * getPyramid(char *name); cxGeo * getGeometry(char *name); Further Notes
A number of port names are reserved for use by the collaborative class and should not be used by users' code. Instances of these ports must be included in any user written collaborative module. The port names are as follows: Additionally, to facilitate the automatic launching and connection of collaborative modules, none of its ports should be set to Required.