![]() |
Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
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