Zoltan Developer's Guide | Next | Previous

## Interface Functions

The interface to the Zoltan library is defined in the file include/zoltan.h. This file should be included in application programs that use Zoltan. It is also included in zz/zz_const.h, which should be included by most Zoltan files to provide access to the Zoltan data structures described below.

In include/zoltan.h, the enumerated type ZOLTAN_FN_TYPE defines the application query function types (e.g., ZOLTAN_NUM_OBJ_FN_TYPE and ZOLTAN_OBJ_LIST_FN_TYPE). The interface query routines (e.g., ZOLTAN_NUM_OBJ_FN and ZOLTAN_OBJ_LIST_FN) and their argument lists are defined as C type definitions (typedef). These type definitions are used by the application developer to implement the query functions needed for the application to use Zoltan.

Prototypes for the Zoltan interface functions (e.g., Zoltan_LB_Partition and Zoltan_Migrate) are also included in include/zoltan.h. Interface functions are called by the application to register functions, select a load-balancing method, invoke load balancing and migrate data.

The interface to the C++ version of the Zoltan library is in the file include/zoltan_cpp.h. This file defines the Zoltan class, representing a Zoltan_Struct data structure and the functions which operate upon it. The conventions used to wrap C library functions as C++ library functions are described in the chapter C++ Interface. A C++ program that uses Zoltan includes include/zoltan_cpp.h instead of include/zoltan.h.

For more detailed information on Zoltan's query and interface functions, please see the Zoltan User's Guide.

[Table of Contents | Next: ID Data Types | Previous: Zoltan Interface and Data Structures | Privacy and Security]