Field3D
|
Namespace for file input specifics. More...
Classes | |
struct | ParseLayersInfo |
struct used to pass the class and partition info back to the parseLayers() callback More... | |
Functions | |
herr_t | parseLayers (hid_t loc_id, const char *partitionName, const H5L_info_t *linfo, void *opdata) |
Gets called from readPartitionAndLayerInfo to check each group found under the root of the file. It checks to see if it can find a "partition" and then passes that to writePartition. | |
herr_t | parsePartitions (hid_t loc_id, const char *partitionName, const H5L_info_t *linfo, void *opdata) |
Gets called from readPartitionAndLayerInfo to check each group found under the root of the file. It checks to see if it can find a "partition" and then passes that to writePartition. |
Namespace for file input specifics.
herr_t InputFile::parsePartitions | ( | hid_t | loc_id, |
const char * | partitionName, | ||
const H5L_info_t * | linfo, | ||
void * | opdata | ||
) |
Gets called from readPartitionAndLayerInfo to check each group found under the root of the file. It checks to see if it can find a "partition" and then passes that to writePartition.
Definition at line 1110 of file Field3DFile.cpp.
References Field3DInputFile::parsePartition().
Referenced by Field3DInputFile::readPartitionAndLayerInfo().
{ herr_t status; H5O_info_t infobuf; status = H5Oget_info_by_name(loc_id, itemName, &infobuf, H5P_DEFAULT); if (status < 0) { return -1; } if (infobuf.type == H5O_TYPE_GROUP) { // Check that we have a name if (!itemName) { return -1; } // check that this group is not "groupMembership" if (string(itemName) != "field3d_group_membership" && string(itemName) != "field3d_global_metadata") { // Get a pointer to the file data structure Field3DInputFile* fileObject = static_cast<Field3DInputFile*>(opdata); if (!fileObject) { return -1; } return fileObject->parsePartition(loc_id, itemName); } } return 0; }
herr_t InputFile::parseLayers | ( | hid_t | loc_id, |
const char * | partitionName, | ||
const H5L_info_t * | linfo, | ||
void * | opdata | ||
) |
Gets called from readPartitionAndLayerInfo to check each group found under the root of the file. It checks to see if it can find a "partition" and then passes that to writePartition.
Definition at line 1148 of file Field3DFile.cpp.
References InputFile::ParseLayersInfo::file, Hdf5Util::H5Base::id(), Field3DInputFile::parseLayer(), InputFile::ParseLayersInfo::partitionName, and Hdf5Util::readAttribute().
Referenced by Field3DInputFile::readPartitionAndLayerInfo().
{ herr_t status; H5O_info_t infobuf; status = H5Oget_info_by_name (loc_id, itemName, &infobuf, H5P_DEFAULT); if (infobuf.type == H5O_TYPE_GROUP) { // Check that we have a name if (!itemName) return -1; // Get a pointer to the file data structure ParseLayersInfo* info = static_cast<ParseLayersInfo*>(opdata); if (!info) return -1; // Open up the layer group H5ScopedGopen layerGroup(loc_id, itemName); // Check if it's a layer string classType; try { if (!readAttribute(layerGroup.id(), "class_type", classType)) { return 0; } if (classType == string("field3d_layer")) return info->file->parseLayer(layerGroup.id(), info->partitionName, itemName); } catch (MissingAttributeException &e) { } return 0; } return 0; }