MOAB: Mesh Oriented datABase
(version 5.4.1)
|
00001 /** 00002 * MOAB, a Mesh-Oriented datABase, is a software component for creating, 00003 * storing and accessing finite element mesh data. 00004 * 00005 * Copyright 2004 Sandia Corporation. Under the terms of Contract 00006 * DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government 00007 * retains certain rights in this software. 00008 * 00009 * This library is free software; you can redistribute it and/or 00010 * modify it under the terms of the GNU Lesser General Public 00011 * License as published by the Free Software Foundation; either 00012 * version 2.1 of the License, or (at your option) any later version. 00013 * 00014 */ 00015 00016 #ifndef NAMES_AND_PATHS_H 00017 #define NAMES_AND_PATHS_H 00018 00019 /* Constants for misc paths and names inside the hdf file */ 00020 00021 /* The root group of the hdf file, containing all mesh data */ 00022 #define ROOT_GROUP "/tstt/" 00023 00024 /* Object containing history (ExodusII-type QA records) */ 00025 #define HISTORY_NAME "history" 00026 #define HISTORY_PATH ROOT_GROUP HISTORY_NAME 00027 00028 /* Path to the group containing the tag meta-information and 00029 * sparse tag data */ 00030 #define TAG_GROUP_NAME "tags" 00031 #define TAG_GROUP ROOT_GROUP TAG_GROUP_NAME "/" 00032 #define SPARSE_ENTITY_NAME "id_list" 00033 #define SPARSE_VALUES_NAME "values" 00034 #define TAG_TYPE_NAME "type" 00035 #define TAG_VAR_INDICES "var_indices" 00036 00037 /* Common names for data node/element/set groups */ 00038 #define DENSE_TAG_SUBGROUP TAG_GROUP_NAME "/" 00039 #define ADJACENCY_NAME "adjacency" 00040 #define CONNECTIVITY_NAME "connectivity" 00041 #define POLY_INDEX_NAME "poly_indices" 00042 #define TYPE_ENUM_PATH ROOT_GROUP "elemtypes" 00043 00044 /* Node paths */ 00045 #define NODE_GROUP_NAME "nodes" 00046 #define NODE_GROUP ROOT_GROUP NODE_GROUP_NAME "/" 00047 #define NODE_COORD_NAME "coordinates" 00048 #define NODE_COORD_PATH NODE_GROUP NODE_COORD_NAME 00049 #define NODE_TAG_GROUP NODE_GROUP DENSE_TAG_SUBGROUP 00050 #define NODE_ADJCY_PATH NODE_GROUP ADJACENCY_NAME 00051 00052 /* MeshSet paths */ 00053 #define SET_GROUP_NAME "sets" 00054 #define SET_GROUP ROOT_GROUP SET_GROUP_NAME "/" 00055 #define SET_META_NAME "list" 00056 #define SET_META_PATH SET_GROUP SET_META_NAME 00057 #define SET_CHILD_NAME "children" 00058 #define SET_CHILD_PATH SET_GROUP SET_CHILD_NAME 00059 #define SET_PARENT_NAME "parents" 00060 #define SET_PARENT_PATH SET_GROUP SET_PARENT_NAME 00061 #define SET_DATA_NAME "contents" 00062 #define SET_DATA_PATH SET_GROUP SET_DATA_NAME 00063 #define SET_TAG_GROUP SET_GROUP DENSE_TAG_SUBGROUP 00064 00065 /* Group for all element types. Subgroups for each type. */ 00066 #define ELEMENT_GROUP_NAME "elements" 00067 #define ELEMENT_GROUP ROOT_GROUP ELEMENT_GROUP_NAME "/" 00068 00069 /* Names for attributes placed on objects in the hdf file */ 00070 #define TAG_DEFAULT_ATTRIB "default" 00071 #define TAG_GLOBAL_ATTRIB "global" 00072 #define TAG_TYPE_ATTRIB "class" 00073 #define TAG_HANDLE_TYPE_ATTRIB "is_handle" 00074 #define TAG_VARLEN_ATTRIB "variable_length" 00075 #define ELEM_TYPE_ATTRIB "element_type" 00076 #define START_ID_ATTRIB "start_id" 00077 #define MAX_ID_ATTRIB "max_id" 00078 00079 #endif