/* * PROJECT: DVS * SUBSYSTEM: vl * MODULE: basictypes.h * * File: $RCSfile: basictypes.h,v $ * Revision: $Revision: 1.1 $ * Date: $Date: 1993/07/12 08:12:20 $ * Author: $Author: john $ * RCS Ident: $Id: basictypes.h,v 1.1 1993/07/12 08:12:20 john Exp $ * * FUNCTION: * * This file contains the lowest level definitions needed by * the vl library. * * $Log: basictypes.h,v $ * Revision 1.1 1993/07/12 08:12:20 john * Initial revision * * Revision 1.3 1992/08/19 11:50:24 jeff * got rid of temporary bodge definition of agentlist now i've got the real thing. * * Revision 1.2 1992/07/27 13:30:38 jon * Temporary fix. AgentList is uint32 not void type. * * Revision 1.1 1992/07/27 12:24:20 jeff * Initial revision * * * Copyright (c) 1992 Division Ltd. * * All Rights Reserved. * * This Document may not, in whole or in part, be copied, * photocopied, reproduced, translated, or reduced to any * electronic medium or machine readable form without prior * written consent from Division Ltd. */ #ifndef _BASIC_TYPES_H #define _BASIC_TYPES_H /* * mangle the basictypes.def file to get machine specific low level * definitions for all our basic types. */ #define DEF_TYPE(a,b,c) typedef c b; #include "basictyp.def" #undef DEF_TYPE /* * generate an enum list of all the symbolic values for the types. */ #define DEF_TYPE(a,b,c) a, typedef enum BasicType { #include "basictyp.def" LAST_TYPE } BasicType; #undef DEF_TYPE #define BASIC_TYPE_CNT ((int)LAST_TYPE) typedef char *String; /* * A structure to define the names etc of the basic types for internal * use. */ typedef struct TypeSpec{ int8 endian16[3]; int8 endian32[5]; struct { String name; uint32 size; uint32 alignment; }Sizes[BASIC_TYPE_CNT]; } *TypeSpec; extern void GenBasicTypes(TypeSpec spec); #endif /* _BASIC_TYPES_H */