<html> <head> <title>libsm : General Definitions</title> </head> <body> <a href="index.html">Back to libsm overview</a> <center> <h1> libsm : General Definitions </h1> <br> $Id: gen.html,v 1.5 2000-12-08 21:41:42 ca Exp $ </center> <h2> Introduction </h2> The header file <tt><sm/gen.h></tt> contains general definitions that are used by every other header file in <b>libsm</b>. <h2> Synopsis </h2> <pre> #include <sm/gen.h> #define NULL ((void*)0) typedef int bool; #define false 0 #define true 1 #define SM_MAX(a, b) ((a) > (b) ? (a) : (b)) #define SM_MIN(a, b) ((a) < (b) ? (a) : (b)) /* ** The following types can be accessed and updated atomically. ** This is relevant in the context of signal handlers and threads. */ typedef <i>some signed integral type</i> SM_ATOMIC_INT_T; typedef <i>some unsigned integral type</i> SM_ATOMIC_UINT_T; </pre> </body> </html> |