# IBM Visualization Data Explorer Programmer's Reference

[ Bottom of Page | Previous Page | Next Page | Table of Contents | Partial Table of Contents | Index ]

## 13.10 Module Access

The module-access routines listed here enable the programmer to call other modules through an interface similar to the scripting language.

Modules are called by name, and parameters are specified as name-value pairs, freeing the programmer from having to supply values for all possible parameters. Optional parameters use the same defaults as they would if being executed directly by the executive. (If other parameters are added in subsequent releases, the call remains upwardly compatible.)

Note:

The following modules cannot be called by DXCallModule:

- Interactors `

  FileSelector | Integer | IntegerList | Reset
  Scalar | ScalarList | Selector | SelectorList
  String | StringList | Toggle | Value
  ValueList | Vector | VectorList |

  `
- Flow Control `

  Done | Execute | First | ForEachMember
  ForEachN | GetGlobal | GetLocal | Route
  SetGlobal | SetLocal | Switch |  |  |  |  |

  `
- Interface Control `

  ManageColormapEditor | ManageControlPanel | ManageImageWindow | ManageSequencer |  |  |  |  |  |  |  |  |  |  |  |

  `
- Special `

  Colormap | Sequencer |  |  |  |  |  |  |  |  |  |  |  |  |  |

  `
- DXLink `

  DXLInput | DXLInputNamed | DXLOutput |  |  |  |  |  |  |  |  |  |  |  |  |

  `

Data Explorer modules can be called by inboard, outboard, and runtime-loadable modules linked to Data Explorer. They can also be called by stand-alone programs (for examples, see /usr/share/dx/samples/callmodule).

Note: Use of DXCallModule in a stand-alone program or outboard module requires linking to the library libDXcallm.a.

`Error DXCallModule(); object DXModSetFloatInput(); object DXModSetIntegerInput(); void DXModSetObjectInput(); void DXModSetObjectOutput(); object DXModSetStringInput(); DXSetModuleInput(); DXSetModuleOutput();` | Allow a module to call another module (see Note on Use). See DXCallModule, DXModSet..., DXSetModule....
`Void DXInitModules()` | Must be called when using DXCallModule in a stand-alone program or outboard module. See DXInitModules.
`Void DXSetErrorExit()` | Determines the action taken when DXSetError is called by a stand-alone program. See DXSetErrorExit.
`Void DXGetErrorExit()` | Returns the current error-handling level as set by DXSetErrorExit. See DXGetErrorExit.
`Error DXCheckRIH()` | Checks registered input handlers. See DXCheckRIH.

Note on Use

This example calls the Slab module.

    Error Slab1(Object toBeSlabbed, int dimension, int position
          Object *slabbedObject)
    {
        ModuleInput in[3];
        ModuleOutput out[1];
        Error result;

        DXModSetObjectInput(&in[0], "input", toBeSlabbed);
        DXModSetIntegerInput(&in[1], "dimension", dimension);
        DXModSetIntegerInput(&in[2], "position", position);
        DXModSetObjectOutput(&out[0], "output", SlabbedObject);
        result = DXCallModule("Slab", 3, in, 1, out);
        return result;
    }

[ Top of Page | Previous Page | Next Page | Table of Contents | Partial Table of Contents | Index ]
[Data Explorer Documentation | QuickStart Guide | User's Guide | User's Reference | Programmer's Reference | Installation and Configuration Guide ]

[Data Explorer Home Page]

[IBM Home Page | Order | Search | Contact IBM | Legal ]