Next: , Previous: , Up: Introduction   [Contents][Index]


1.9 Header Files

The configure script sets the root directory for C header files. By default, it is the directory /usr/local/include/. The command make install installs QSMM header files to the subdirectory qsmm. Therefore, for default parameters of configure script invocation, the command make install installs the QSMM header files to the directory /usr/local/include/qsmm/. You can specify a different root directory for C header files by a command-line option of configure script. See the file INSTALL in the root of the package distribution for more information.

The list and the description of header files being installed.

qsmm.h

This is the main header file of the framework. Contains most of datatype, function, and macro definitions a developer may need.

side.h

A self-contained header file for the Side API. That simple API provides means for exchanging data packets, especially signals, between threads in a multithreaded program. In some cases, program structure with a number of interacting sides executing in separate threads and exchanging data packets may increase program work speed, simplify program development or experimenting. The command make install installs the header file when the configure script configured the package to use the POSIX threads API (see the file INSTALL in the root of the package distribution for information on package configuring).

As of QSMM version 1.17, the Side API is marked as the experimental one. See Exchanging Data Packets in a Multithreaded Program, for more information on why it is so.

map.h

A self-contained header file for the C implementation of functionality of STL map and multimap templates.

version.h

A header file with the macro QSMM_HEADERS_VERSION defined to the version of the package. This macro could be used to check whether versions of the headers and the library conform. The preprocessor #include directive includes this header file in the header file qsmm.h. The content of version.h is generated using the template qsmm/version.h.in in the package distribution.

When a user wants to include these header files in a program with a preprocessor #include directive, the user should specify the directory prefix qsmm. For example, to include header file qsmm.h, the user should specify

#include <qsmm/qsmm.h>

C functions declared in the header files are wrapped in extern "C" declarations. When a C++ source file includes these header files, correct linkage is provided with functions contained in the QSMM library.


Next: , Previous: , Up: Introduction   [Contents][Index]