moab
moab::Tqdcfr::ModelEntry Class Reference

#include <Tqdcfr.hpp>

List of all members.

Public Member Functions

 ModelEntry ()
 ~ModelEntry ()
void print ()
void print_geom_headers (const char *prefix, GeomHeader *header, unsigned int num_headers)
void print_group_headers (const char *prefix, GroupHeader *header, const unsigned int num_headers)
void print_block_headers (const char *prefix, BlockHeader *header, const unsigned int num_headers)
void print_nodeset_headers (const char *prefix, NodesetHeader *header, const unsigned int num_headers)
void print_sideset_headers (const char *prefix, SidesetHeader *header, const unsigned int num_headers)
ErrorCode read_header_info (Tqdcfr *instance, const double data_version)
ErrorCode read_metadata_info (Tqdcfr *tqd)

Public Attributes

unsigned int modelHandle
unsigned int modelOffset
unsigned int modelLength
unsigned int modelType
unsigned int modelOwner
unsigned int modelPad
FEModelHeader feModelHeader
GeomHeaderfeGeomH
GroupHeaderfeGroupH
BlockHeaderfeBlockH
NodesetHeaderfeNodeSetH
SidesetHeaderfeSideSetH
MetaDataContainer geomMD
MetaDataContainer nodeMD
MetaDataContainer elementMD
MetaDataContainer groupMD
MetaDataContainer blockMD
MetaDataContainer nodesetMD
MetaDataContainer sidesetMD

Detailed Description

Definition at line 217 of file Tqdcfr.hpp.


Constructor & Destructor Documentation

Definition at line 2887 of file Tqdcfr.cpp.

    : modelHandle(0), modelOffset(0), 
      modelLength(0), modelType(0), modelOwner(0), modelPad(0),
      feGeomH(NULL), feGroupH(NULL), feBlockH(NULL), 
      feNodeSetH(NULL), feSideSetH(NULL)
{}

Definition at line 2894 of file Tqdcfr.cpp.

{
  delete [] feGeomH; delete [] feGroupH; delete [] feBlockH;
  delete [] feNodeSetH; delete [] feSideSetH;
}

Member Function Documentation

Definition at line 2900 of file Tqdcfr.cpp.

{
  std::cout << "ModelEntry: Han, Of, Len, Tp, Own, Pd = "
            << modelHandle << ", " << modelOffset << ", " << modelLength 
            << ", " << modelType << ", " << modelOwner << ", " << modelPad
            << std::endl;
}
void moab::Tqdcfr::ModelEntry::print_block_headers ( const char *  prefix,
BlockHeader header,
const unsigned int  num_headers 
)

Definition at line 2129 of file Tqdcfr.cpp.

{
  if (!debug) return;
  std::cout << prefix << std::endl;
  if (NULL != header)
    for (unsigned int i = 0; i < num_headers; i++) header[i].print();
}
void moab::Tqdcfr::ModelEntry::print_geom_headers ( const char *  prefix,
GeomHeader header,
unsigned int  num_headers 
)

Definition at line 2106 of file Tqdcfr.cpp.

{
  if (!debug) return;
  std::cout << prefix << std::endl;
  if (NULL != header)
    for (unsigned int i = 0; i < num_headers; i++) {
      std::cout << "Index " << i << std::endl;
      header[i].print();
    }
}
void moab::Tqdcfr::ModelEntry::print_group_headers ( const char *  prefix,
GroupHeader header,
const unsigned int  num_headers 
)

Definition at line 2119 of file Tqdcfr.cpp.

{
  if (!debug) return;
  std::cout << prefix << std::endl;
  if (NULL != header)
    for (unsigned int i = 0; i < num_headers; i++) header[i].print();
}
void moab::Tqdcfr::ModelEntry::print_nodeset_headers ( const char *  prefix,
NodesetHeader header,
const unsigned int  num_headers 
)

Definition at line 2139 of file Tqdcfr.cpp.

{
  if (!debug) return;
  std::cout << prefix << std::endl;
  if (NULL != header)
    for (unsigned int i = 0; i < num_headers; i++) header[i].print();
}
void moab::Tqdcfr::ModelEntry::print_sideset_headers ( const char *  prefix,
SidesetHeader header,
const unsigned int  num_headers 
)

Definition at line 2149 of file Tqdcfr.cpp.

{
  if (!debug) return;
  std::cout << prefix << std::endl;
  if (NULL != header)
    for (unsigned int i = 0; i < num_headers; i++) header[i].print();
}
ErrorCode moab::Tqdcfr::ModelEntry::read_header_info ( Tqdcfr instance,
const double  data_version 
)

Definition at line 2159 of file Tqdcfr.cpp.

{
  feModelHeader.init(modelOffset, instance);
  int negone = -1;
  ErrorCode result;

  int zero = 0;
  result = instance->mdbImpl->tag_get_handle(GLOBAL_ID_TAG_NAME, 1, MB_TYPE_INTEGER,
                                             instance->globalIdTag, MB_TAG_DENSE|MB_TAG_CREAT, &zero);
  if (MB_SUCCESS != result) return result;

  if (feModelHeader.geomArray.numEntities > 0) {
    result = instance->mdbImpl->tag_get_handle(GEOM_DIMENSION_TAG_NAME, 1, MB_TYPE_INTEGER, 
                                               instance->geomTag, MB_TAG_SPARSE|MB_TAG_CREAT, &negone);
    if (MB_SUCCESS != result) return result;
    
    result = instance->mdbImpl->tag_get_handle("UNIQUE_ID", 1, MB_TYPE_INTEGER,
                                           instance->uniqueIdTag, 
                                           MB_TAG_SPARSE|MB_TAG_CREAT, &negone);
    if (MB_SUCCESS != result) return result;
    
    result = Tqdcfr::GeomHeader::read_info_header(modelOffset, 
                                                  feModelHeader.geomArray, 
                                                  instance,
                                                  feGeomH);
    print_geom_headers("Geom headers:", feGeomH, feModelHeader.geomArray.numEntities);
    if (MB_SUCCESS != result) return result;
  }
  
  if (feModelHeader.groupArray.numEntities > 0) {
    result = Tqdcfr::GroupHeader::read_info_header(modelOffset, 
                                                   feModelHeader.groupArray, 
                                                   instance,
                                                   feGroupH);
    print_group_headers("Group headers:", feGroupH, feModelHeader.groupArray.numEntities);
    if (MB_SUCCESS != result) return result;
  }

  if (feModelHeader.blockArray.numEntities > 0) {
    result = instance->mdbImpl->tag_get_handle(MATERIAL_SET_TAG_NAME, 1, MB_TYPE_INTEGER, 
                                               instance->blockTag, MB_TAG_SPARSE|MB_TAG_CREAT, &negone);
    if (MB_SUCCESS != result) return result;
    
    result = Tqdcfr::BlockHeader::read_info_header(data_version, modelOffset, 
                                                   feModelHeader.blockArray, 
                                                   instance,
                                                   feBlockH);
    print_block_headers("Block headers:", feBlockH, feModelHeader.blockArray.numEntities);
    if (MB_SUCCESS != result) return result;
  }
  if (feModelHeader.nodesetArray.numEntities > 0) {
    result = instance->mdbImpl->tag_get_handle(DIRICHLET_SET_TAG_NAME, 1, MB_TYPE_INTEGER, 
                                               instance->nsTag, MB_TAG_SPARSE|MB_TAG_CREAT, &negone);
    if (MB_SUCCESS != result) return result;
    
    result = Tqdcfr::NodesetHeader::read_info_header(modelOffset, 
                                                     feModelHeader.nodesetArray, 
                                                     instance,
                                                     feNodeSetH);
    if (MB_SUCCESS != result) return result;
    print_nodeset_headers("Nodeset headers:", feNodeSetH, feModelHeader.nodesetArray.numEntities);
  }
  if (feModelHeader.sidesetArray.numEntities > 0) {
    result = instance->mdbImpl->tag_get_handle(NEUMANN_SET_TAG_NAME, 1, MB_TYPE_INTEGER, 
                                               instance->ssTag, MB_TAG_SPARSE|MB_TAG_CREAT, &negone);
    if (MB_SUCCESS != result) return result;
    
    result = Tqdcfr::SidesetHeader::read_info_header(modelOffset, 
                                                     feModelHeader.sidesetArray, 
                                                     instance,
                                                     feSideSetH);
    print_sideset_headers("SideSet headers:", feSideSetH, feModelHeader.sidesetArray.numEntities);
  }

  return MB_SUCCESS;
}

Definition at line 2236 of file Tqdcfr.cpp.

{
  if (debug) std::cout << "Geom metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.geomArray.metaDataOffset,
                      geomMD);
  if (debug) std::cout << "Node metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.nodeArray.metaDataOffset,
                      nodeMD);
  if (debug) std::cout << "Elem metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.elementArray.metaDataOffset,
                      elementMD);
  if (debug) std::cout << "Group metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.groupArray.metaDataOffset,
                      groupMD);
  if (debug) std::cout << "Block metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.blockArray.metaDataOffset,
                      blockMD);
  if (debug) std::cout << "Nodeset metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.nodesetArray.metaDataOffset,
                      nodesetMD);
  if (debug) std::cout << "Sideset metadata:" << std::endl;
  tqd->read_meta_data(modelOffset+feModelHeader.sidesetArray.metaDataOffset,
                      sidesetMD);

  return MB_SUCCESS;
}

Member Data Documentation

Definition at line 224 of file Tqdcfr.hpp.

Definition at line 224 of file Tqdcfr.hpp.

Definition at line 224 of file Tqdcfr.hpp.

Definition at line 224 of file Tqdcfr.hpp.

Definition at line 224 of file Tqdcfr.hpp.

Definition at line 224 of file Tqdcfr.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines