# IBM Visualization Data Explorer Programmer's Reference

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

# Chapter 17. DXLink Developer's Toolkit

Partial Table-of-Contents

- 17.1 Introduction
- 17.2 Example 1: sealevel.c
- 17.3 Example 2: maptoplane.c
- 17.4 Example 3: xapp.c
- 17.5 Initialization and Exit
- 17.6 Messaging System
- Sending Messages to the Server
- Receiving Messages from the Server
- Messaging Routines
- 17.7 Execution Control
- 17.8 Program Control
- Loading programs and macros
- Setting Variables
- Retrieving Values Sent From Data Explorer
- 17.9 Window Control

  ## 17.1 Introduction

  DXLink is a C programming interface that can be used to communicate with the Data Explorer user interface (dxui) or the Data Explorer executive (dxexec). Functions are provided to load programs, enable the setting and retrieval of named variables, control execution, handle errors, and define application-specific messaging. For the user interface, functions are also available to control window visibility and to load configuration files. For the executive, a function is provided to send arbitrary scripting-language commands. Support for X windows is built in but is not required.

  The kinds of application that can be written with DXLink include:

  - A graphical user interface and demonstration utility that controls the execution of the Data Explorer user interface to start selected demos, flip through images, and remove and place windows on the display.
  - A graphical user interface that communicates with the executive, replacing the Data Explorer user interface.
  - A shell-like scripting language to control the user interface (and that might also be useful for a demonstration utility).

  A majority of DXLink functions have names that begin with the prefix "DXL." These functions can be used in communicating with either the user interface or the executive. The prefix "uiDXL" identifies a function intended for use only with the interface; the prefix "exDXL," a function for use only with the executive.

  Note: In the remainder of this document, references to "the server" apply to the user interface and the executive equally.

  All applications that use the DXLink facilities must link with the library libDXL.a and include the header file dxl.h in the source code.

  The functions provided by DXLink are described in more detail in the following sections. They have been divided into four groups:

  1. 17.5 , "Initialization and Exit",
  2. 17.6 , "Messaging System",,
  3. 17.7 , "Execution Control", and
  4. 17.8 , "Program Control".

  The declarations for these functions are found in the C include file `dxl.h`, which should be included in any C file that uses them. The following sections describe three simple DXLink programs. All of these examples and necessary Makefiles can be found in `/usr/local/dx/samples/dxlink`. It is recommended that you create these programs and run them before studying the C code which follows. See the `Readme` file in `/usr/local/dx/samples/dxlink` for instructions on how to create them.

  Stand-alone Programs
  Stand-alone programs may access the Data Explorer data model by linking to the library DXlite. The file libDXlite.a contains a subset of Data Explorer routines (see Appendix B. "Data Explorer Data Model Library: DXlite Routines"). Stand-alone programs may also access almost all Data Explorer data modules and all Data Explorer library routines by linking to the library libDXcallm.a. (The exceptions are such user-interface features as interactors, the Colormap Editor, the Image tool, and Get and Set.) The file libDXcallm.a contains all the Data Explorer library routines listed in Appendix C. "Data Explorer Library Routines". See also 13.10 , "Module Access". When starting Data Explorer from an external program, certain command line options may be useful to disable portions of the user interface that the external program is intended to control. See Table 6 in IBM Visualization Data Explorer User's Guide.

  [ 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 ]