mater.h

Go to the documentation of this file.
00001 /*                         M A T E R . H
00002  * BRL-CAD
00003  *
00004  * Copyright (c) 1985-2006 United States Government as represented by
00005  * the U.S. Army Research Laboratory.
00006  *
00007  * This library is free software; you can redistribute it and/or
00008  * modify it under the terms of the GNU Lesser General Public License
00009  * as published by the Free Software Foundation; either version 2.1 of
00010  * the License, or (at your option) any later version.
00011  *
00012  * This library is distributed in the hope that it will be useful, but
00013  * WITHOUT ANY WARRANTY; without even the implied warranty of
00014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00015  * Library General Public License for more details.
00016  *
00017  * You should have received a copy of the GNU Lesser General Public
00018  * License along with this file; see the file named COPYING for more
00019  * information.
00020  */
00021 /** @addtogroup librt */
00022 /*@{*/
00023 /** @file mater.h
00024  *@brief
00025  *  Information about mapping between region IDs and material
00026  *  information (colors and outboard database "handles").
00027  *
00028  *  @author
00029  *      Michael John Muuss
00030  *
00031  *  @par Source
00032  *      SECAD/VLD Computing Consortium, Bldg 394
00033  *@n    The U. S. Army Ballistic Research Laboratory
00034  *@n    Aberdeen Proving Ground, Maryland  21005
00035  *
00036  *  $Header: /cvsroot/brlcad/brlcad/include/mater.h,v 14.9 2006/09/18 05:24:07 lbutler Exp $
00037  */
00038 
00039 #include "bu.h"
00040 
00041 #ifndef RT_EXPORT
00042 #if defined(_WIN32) && !defined(__CYGWIN__) && defined(BRLCAD_DLL)
00043 #ifdef RT_EXPORT_DLL
00044 #define RT_EXPORT __declspec(dllexport)
00045 #else
00046 #define RT_EXPORT __declspec(dllimport)
00047 #endif
00048 #else
00049 #define RT_EXPORT
00050 #endif
00051 #endif
00052 
00053 struct mater {
00054         short           mt_low;         /**< @brief bounds of region IDs, inclusive */
00055         short           mt_high;
00056         unsigned char   mt_r;           /**< @brief color */
00057         unsigned char   mt_g;
00058         unsigned char   mt_b;
00059         long            mt_daddr;       /**< @brief db address, for updating */
00060         struct mater    *mt_forw;       /**< @brief next in chain */
00061 };
00062 #define MATER_NULL      ((struct mater *)0)
00063 #define MATER_NO_ADDR   (-1L)           /**< @brief invalid mt_daddr */
00064 
00065 RT_EXPORT extern struct mater *rt_material_head; /**< @brief defined in mater.c */
00066 RT_EXPORT BU_EXTERN(void rt_insert_color,
00067                        (struct mater *newp));
00068 /*@}*/
00069 /*
00070  * Local Variables:
00071  * mode: C
00072  * tab-width: 8
00073  * c-basic-offset: 4
00074  * indent-tabs-mode: t
00075  * End:
00076  * ex: shiftwidth=4 tabstop=8
00077  */
00078 

Generated on Mon Sep 18 01:24:41 2006 for BRL-CAD by  doxygen 1.4.6