00001 /** @file GATConfig.h 00002 * Header file for the GATConfig class. 00003 * 00004 * A GATConfig object contains a set of configuration tables 00005 * which define configuration parameters for the system and 00006 * for specific adaptors. 00007 * 00008 * @date Tue Sep 23 2003 00009 * 00010 * @version $Header: /export/cvs-gridlab/wp-1/Codes/GATEngine/C-reference/src/GATConfig.h,v 1.10 2004/04/09 12:29:18 hartmutkaiser Exp $ 00011 * 00012 * Copyright (C) Tom Goodale 00013 * This file is part of the GAT Engine. 00014 * Contributed by Tom Goodale <goodale@aei.mpg.de>. 00015 * 00016 * Use, modification and distribution is subject to the Gridlab Software 00017 * License. (See accompanying file GLlicense.txt or copy at 00018 * http://www.gridlab.org/GLlicense.txt) 00019 */ 00020 00021 #ifndef _GATCONFIG_H_ 00022 #define _GATCONFIG_H_ 1 00023 00024 #include "GATType.h" 00025 #include "GATTable.h" 00026 00027 struct GATConfigTableList_S 00028 { 00029 struct GATConfigTableList_S *next; 00030 GATTable config; 00031 char *nickname; 00032 }; 00033 00034 typedef struct GATConfigTableList_S *GATConfigTableList; 00035 typedef struct GATConfigTableList_S const *GATConfigTableList_const; 00036 00037 #ifdef __cplusplus 00038 extern "C" { 00039 #endif 00040 00041 GATConfig 00042 GATConfig_Create(GATContext error_context); 00043 00044 void 00045 GATConfig_Destroy(GATConfig *this); 00046 00047 GATTable_const 00048 GATConfig_GetSystemConfig(GATConfig_const this); 00049 00050 GATConfigTableList_const 00051 GATConfig_GetAdaptorConfigs(GATConfig_const this, const char *adaptor); 00052 00053 GATResult 00054 GATConfig_AddAdaptorConfig(GATConfig this, GATContext error_context, 00055 const char *adaptor, const char *nickname, GATTable config); 00056 00057 #ifdef __cplusplus 00058 } 00059 #endif 00060 00061 #endif /* _GATCONFIG_H_ */