(* X11/Xmd.def  May 11  12:33:40  1996 *)
(* Copyright (c) 1996,1997 XDS Ltd, Russia. All rights reserved. *)

(* Converted using H2D v1.00 from X11/Xmd.h. *)

(* $RCSfile: Xmd.def,v $ $Revision: 4 $ $Date: 28.07.98 23:13 $ *)

<*+ M2ADDTYPES *>
<*+ M2EXTENSIONS *>
<*+ NOHEADER *>
<* IF NOT DEFINED(GENCTYPES) THEN *> <* NEW GENTYPEDEF+ *> <* END *>
<*+ CSTDLIB *>

DEFINITION MODULE ["C"] Xmd;

IMPORT SYSTEM;
(* H2D: to import this module write following text:
IMPORT Xmd;
*)

CONST 
  XMD_H = 1;

(*  $XConsortium: Xmd.h,v 1.49 95/06/08 23:20:39 gildea Exp $  *)
(*  $XFree86: xc/include/Xmd.h,v 3.3 1995/07/08 10:23:10 dawes Exp $  *)

(*
 *  Xmd.h: MACHINE DEPENDENT DECLARATIONS. 
 *)

(*
 * Special per-machine configuration flags. 
 *)

(*
 * Stuff to handle large architecture machines; the constants were generated
 * on a 32-bit machine and must coorespond to the protocol.
 *)

(*
 * Definition of macro used to set constants for size of network structures;
 * machines with preprocessors that can't handle all of the sz_ symbols
 * can define this macro to be sizeof(x) if and only if their compiler doesn't
 * pad out structures (esp. the xTextElt structure which contains only two
 * one-byte fields).  Network structures should always define sz_symbols.
 *
 * The sz_ prefix is used instead of something more descriptive so that the
 * symbols are no more than 32 characters long (which causes problems for some
 * compilers and preprocessors).
 *
 * The extra indirection in the __STDC__ case is to get macro arguments to
 * expand correctly before the concatenation, rather than afterward.
 *)

(*
 * Bitfield suffixes for the protocol structure elements, if you
 * need them.  Note that bitfields are not guarranteed to be signed
 * (or even unsigned) according to ANSI C.
 *)


TYPE 
  INT32 = LONGINT;

  INT16 = SYSTEM.INT16;

  INT8 = CHAR;

  CARD32 = LONGCARD;

  CARD16 = SYSTEM.CARD16;

  CARD8 = SHORTCARD;

  BITS32 = CARD32;

  BITS16 = CARD16;

  BYTE = CARD8;

  BOOL = CARD8;

END Xmd.
