|
musrfit 1.10.0
|
NeXus HDF4 file reader with case-insensitive path lookup. More...
#include <PNeXus.h>
Public Member Functions | |
| PNeXus () | |
| PNeXus (const std::string fln, const bool printDebug=false) | |
| Constructor - creates PNeXus object and reads the NeXus file. | |
| ~PNeXus () | |
| Destructor - closes HDF4 file if open. | |
| std::string | GetFileName () const |
| Get the filename of the NeXus file. | |
| std::string | GetHdf4LibVersion () const |
| Get the hdf4 library version. | |
| std::string | GetHdf4Version () const |
| Get the hdf4 version of the NeXus file. | |
| std::string | GetNeXusVersion () const |
| Get the NeXus version of the file. | |
| int | GetIdfVersion () const |
| Get the Idf version of the file. | |
| int | ReadNexusFile () |
| Read and parse the NeXus HDF4 file. | |
| const std::map< std::string, std::any > & | GetDataMap () const |
| Get the data map containing all datasets. | |
| std::map< std::string, std::any > & | GetDataMap () |
| Get mutable reference to the data map. | |
| bool | HasDataset (const std::string &path) const |
| Check if a dataset path exists in the data map. | |
| template<typename T> | |
| void | SetDataset (const std::string &path, const PNXdata< T > &data) |
| Add or update a dataset in the data map. | |
| template<typename T> | |
| PNXdata< T > | GetDataset (const std::string &path) const |
| Get a dataset from the data map. | |
| template<typename T> | |
| PNXdata< T > & | GetDatasetRef (const std::string &path) |
| Get a mutable reference to a dataset in the data map. | |
| bool | RemoveDataset (const std::string &path) |
| Remove a dataset from the data map. | |
| void | ClearDataMap () |
| Clear all datasets from the data map. | |
| size_t | GetNumDatasets () const |
| Get the number of datasets in the data map. | |
| template<typename T> | |
| bool | UpdateDatasetData (const std::string &path, const std::vector< T > &newData) |
| Update the data of an existing dataset. | |
| template<typename T> | |
| bool | UpdateDatasetDimensions (const std::string &path, const std::vector< uint32_t > &newDimensions) |
| Update the dimensions of an existing dataset. | |
| template<typename T> | |
| bool | AddDatasetAttribute (const std::string &path, const std::string &attrName, const std::any &attrValue) |
| Add or update an attribute for a dataset. | |
| template<typename T> | |
| bool | RemoveDatasetAttribute (const std::string &path, const std::string &attrName) |
| Remove an attribute from a dataset. | |
| template<typename T> | |
| bool | AddDataset (const std::string &path, const std::vector< T > &data, const std::vector< uint32_t > &dimensions, const H4DataType &dataType=H4DataType::kINT32) |
| Create and add a new dataset with data, dimensions, and optional attributes. | |
| template<typename T> | |
| bool | ModifyDataset (const std::string &path, const std::vector< T > &newData, const std::vector< uint32_t > &newDimensions) |
| Modify an existing dataset's data and dimensions. | |
| void | Dump () |
| Print a human-readable dump of the NeXus file contents. | |
| int | WriteNexusFile (const std::string &filename, int idfVersion=2) |
| Write the data map contents to a NeXus HDF4 file. | |
| bool | AddGroupAttribute (const std::string &groupPath, const std::string &attrName, const std::any &attrValue) |
| Add or update an attribute for a group. | |
| bool | RemoveGroupAttribute (const std::string &groupPath, const std::string &attrName) |
| Remove an attribute from a group. | |
| bool | HasGroupAttribute (const std::string &groupPath, const std::string &attrName) const |
| Check if a group has a specific attribute. | |
| std::any | GetGroupAttribute (const std::string &groupPath, const std::string &attrName) const |
| Get an attribute value from a group. | |
| const std::map< std::string, std::any > & | GetGroupAttributes (const std::string &groupPath) const |
| Get all attributes for a group. | |
| bool | ClearGroupAttributes (const std::string &groupPath) |
| Clear all attributes from a group. | |
| bool | AddRootAttribute (const std::string &attrName, const std::any &attrValue) |
Private Member Functions | |
| void | HandleIdfV1 (int32 sd_id) |
| Read datasets for IDF version 1 file structure. | |
| void | HandleIdfV2 (int32 sd_id) |
| Read datasets for IDF version 2 file structure. | |
| template<typename T> | |
| void | WriteDatasetAttributes (int32 sds_id, const PNXdata< T > &data) |
| Write dataset attributes from PNXdata object. | |
| void | WriteVGroupAttributes (int32 vgroup_id, const std::map< std::string, std::any > &attributes) |
| Write attributes to a Vgroup. | |
| int32 | CreateVGroupHierarchy (int32 file_id, const std::string &path, std::map< std::string, int32 > &vgroupCache) |
| Create the Vgroup hierarchy for a given path. | |
| int32 | WriteIntDataset (int32 sd_id, const std::string &path, const PNXdata< int > &data) |
| Write an integer dataset with attributes and return its SDS reference. | |
| int32 | WriteFloatDataset (int32 sd_id, const std::string &path, const PNXdata< float > &data) |
| Write a float dataset with attributes and return its SDS reference. | |
| int32 | WriteStringDataset (int32 sd_id, const std::string &path, const PNXdata< std::string > &data) |
| Write a string dataset with attributes and return its SDS reference. | |
| void | WriteFileAttributes (int32 sd_id) |
| Write root-level file attributes. | |
| std::string | FindAttributeName (int32 sd_id, const std::string &requestedName) |
| int32 | FindDatasetIndex (int32 sd_id, const std::string &requestedName) |
| Find dataset index with case-insensitive matching. | |
| int32 | FindDatasetRefByPath (const std::string &path) |
| Find dataset reference by navigating VGroup hierarchy. | |
| void | ReadIntDataset (int32 sd_id, const std::string &path) |
| Read an integer dataset and store in data map. | |
| void | ReadFloatDataset (int32 sd_id, const std::string &path) |
| Read a float dataset and store in data map. | |
| void | ReadStringDataset (int32 sd_id, const std::string &path) |
| Read a string dataset and store in data map. | |
| template<typename T> | |
| void | ReadDatasetAttributes (int32 sds_id, PNXdata< T > &data) |
| Read dataset attributes and add to PNXdata object. | |
Static Private Member Functions | |
| static bool | CaseInsensitiveEquals (const std::string &a, const std::string &b) |
| Compare two strings case-insensitively. | |
| static std::vector< std::string > | SplitPath (const std::string &path) |
| static H4DataType | convertHdf4Type (int32 hdf4_type) |
| Convert HDF4 data type to H4DataType enum. | |
| static int32 | convertToHdf4Type (H4DataType dataType) |
| Convert H4DataType enum to HDF4 data type. | |
Private Attributes | |
| bool | fPrintDebug {false} |
| if true print additional debug information | |
| std::string | fFileName {""} |
| NeXus HDF4 filename. | |
| int | fIdfVersion {-1} |
| IDF version of the NeXus file. | |
| std::string | fHdf4LibVersion {""} |
| HDF4 library version used when calling PNeXus. | |
| std::string | fHdf4Version {""} |
| HDF4 version of the file. | |
| std::string | fNeXusVersion {""} |
| NeXus version of the file. | |
| std::string | fFileNameNxs {""} |
| std::string | fFileTimeNxs {""} |
| std::string | fCreatorNxs {""} |
| std::string | fUserV1 {""} |
| int32 | fSdId {-1} |
| HDF4 SD interface identifier. | |
| int32 | fFileId {-1} |
| HDF4 file identifier. | |
| std::map< std::string, std::any > | fDataMap |
| Map of HDF4 paths to PNXdata objects. | |
| std::map< std::string, std::map< std::string, std::any > > | fGroupAttributes |
| Map of group paths to their attributes. | |
NeXus HDF4 file reader with case-insensitive path lookup.
The PNeXus class provides functionality for reading ISIS muon NeXus HDF4 files using the HDF4 C API. It implements case-insensitive path lookup for datasets, groups, and attributes to handle files with varying path casings.
Key features:
| nxH4::PNeXus::PNeXus | ( | ) |
Definition at line 329 of file PNeXus.cpp.
References fFileId, fHdf4LibVersion, and fSdId.
| nxH4::PNeXus::PNeXus | ( | const std::string | fln, |
| const bool | printDebug = false ) |
Constructor - creates PNeXus object and reads the NeXus file.
| fln | Filename of the NeXus HDF4 file to read |
| printDebug | Enable debug output |
| std::runtime_error | if file cannot be opened or read |
Definition at line 340 of file PNeXus.cpp.
References fFileId, fFileName, fHdf4LibVersion, fPrintDebug, fSdId, and ReadNexusFile().
| nxH4::PNeXus::~PNeXus | ( | ) |
Destructor - closes HDF4 file if open.
Definition at line 356 of file PNeXus.cpp.
|
inline |
Create and add a new dataset with data, dimensions, and optional attributes.
| T | Data type of the PNXdata object |
| path | HDF4 path for the new dataset |
| data | Data vector |
| dimensions | Dimensions vector |
| dataType | HDF4 DataType (optional, uses default if not provided) |
Definition at line 759 of file PNeXus.h.
References fDataMap, HasDataset(), nxH4::kINT32, nxH4::PNXdata< T >::SetData(), and nxH4::PNXdata< T >::SetDimensions().
|
inline |
Add or update an attribute for a dataset.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| attrName | Attribute name |
| attrValue | Attribute value (stored as std::any) |
Definition at line 713 of file PNeXus.h.
References fDataMap, and HasDataset().
| bool nxH4::PNeXus::AddGroupAttribute | ( | const std::string & | groupPath, |
| const std::string & | attrName, | ||
| const std::any & | attrValue ) |
Add or update an attribute for a group.
Stores an attribute value in the internal group attributes map. These attributes will be written when WriteNexusFile() is called. The root group "/" can be used for file-level attributes.
| groupPath | HDF4 path of the group (e.g., "/raw_data_1") |
| attrName | Attribute name |
| attrValue | Attribute value (stored as std::any) |
Definition at line 2449 of file PNeXus.cpp.
References fGroupAttributes.
Referenced by AddRootAttribute().
| bool nxH4::PNeXus::AddRootAttribute | ( | const std::string & | attrName, |
| const std::any & | attrValue ) |
Definition at line 2508 of file PNeXus.cpp.
References AddGroupAttribute().
|
staticprivate |
Compare two strings case-insensitively.
| a | First string to compare |
| b | Second string to compare |
Definition at line 2516 of file PNeXus.cpp.
Referenced by FindAttributeName(), FindDatasetIndex(), FindDatasetRefByPath(), and ReadNexusFile().
|
inline |
| bool nxH4::PNeXus::ClearGroupAttributes | ( | const std::string & | groupPath | ) |
Clear all attributes from a group.
| groupPath | HDF4 path of the group |
Definition at line 2498 of file PNeXus.cpp.
References fGroupAttributes.
|
staticprivate |
Convert HDF4 data type to H4DataType enum.
Convert HDF4 numeric type constant to H4DataType enum.
| hdf4_type | HDF4 numeric type constant (DFNT_*) |
Maps HDF4 DFNT_* type constants to the library's H4DataType enum for type-safe handling of dataset types.
| hdf4_type | HDF4 numeric type constant (e.g., DFNT_INT32) |
Definition at line 2744 of file PNeXus.cpp.
References nxH4::kCHAR8, nxH4::kFLOAT32, nxH4::kFLOAT64, nxH4::kINT16, nxH4::kINT32, nxH4::kINT8, nxH4::kUINT16, nxH4::kUINT32, and nxH4::kUINT8.
|
staticprivate |
Convert H4DataType enum to HDF4 data type.
Convert H4DataType enum to HDF4 numeric type constant.
| dataType | H4DataType enum value |
Maps the library's H4DataType enum to HDF4 DFNT_* type constants for writing datasets to HDF4 files.
| dataType | H4DataType enum value |
Definition at line 2771 of file PNeXus.cpp.
References nxH4::kCHAR8, nxH4::kFLOAT32, nxH4::kFLOAT64, nxH4::kINT16, nxH4::kINT32, nxH4::kINT8, nxH4::kUINT16, nxH4::kUINT32, and nxH4::kUINT8.
|
private |
Create the Vgroup hierarchy for a given path.
Given a path like "/run/sample", creates Vgroups "run" and "sample" (nested), writing any associated group attributes from fGroupAttributes. Uses a cache to avoid creating duplicate Vgroups.
| file_id | HDF4 file ID (from Hopen) |
| path | The group path to create (e.g., "/run/sample") |
| vgroupCache | Map of already-created group paths to their Vgroup references |
Definition at line 2365 of file PNeXus.cpp.
References fGroupAttributes, SplitPath(), and WriteVGroupAttributes().
Referenced by WriteNexusFile().
| void nxH4::PNeXus::Dump | ( | ) |
Print a human-readable dump of the NeXus file contents.
Outputs the contents of the loaded NeXus file to stdout in a hierarchical format. The output includes:
The output format differs based on IDF version (1 or 2).
Definition at line 981 of file PNeXus.cpp.
References fDataMap, fFileName, fFileNameNxs, fFileTimeNxs, fHdf4Version, fIdfVersion, and fNeXusVersion.
|
private |
Definition at line 2551 of file PNeXus.cpp.
References CaseInsensitiveEquals().
|
private |
Find dataset index with case-insensitive matching.
| sd_id | HDF4 SD interface ID |
| requestedName | Requested dataset name (any case) |
| std::runtime_error | if dataset not found |
Definition at line 2572 of file PNeXus.cpp.
References CaseInsensitiveEquals().
Referenced by ReadFloatDataset(), ReadIntDataset(), and ReadStringDataset().
|
private |
Find dataset reference by navigating VGroup hierarchy.
| path | Full hierarchical path (e.g., "/run/sample/name") |
Definition at line 2604 of file PNeXus.cpp.
References CaseInsensitiveEquals(), fFileId, fSdId, and SplitPath().
Referenced by ReadFloatDataset(), ReadIntDataset(), ReadNexusFile(), and ReadStringDataset().
|
inline |
|
inline |
|
inline |
Get a dataset from the data map.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| std::out_of_range | if path doesn't exist |
| std::bad_any_cast | if type T doesn't match stored type |
Definition at line 624 of file PNeXus.h.
References fDataMap.
|
inline |
Get a mutable reference to a dataset in the data map.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| std::out_of_range | if path doesn't exist |
| std::bad_any_cast | if type T doesn't match stored type |
Definition at line 637 of file PNeXus.h.
References fDataMap.
|
inline |
| std::any nxH4::PNeXus::GetGroupAttribute | ( | const std::string & | groupPath, |
| const std::string & | attrName ) const |
Get an attribute value from a group.
| groupPath | HDF4 path of the group |
| attrName | Attribute name |
| std::out_of_range | if group or attribute doesn't exist |
Definition at line 2481 of file PNeXus.cpp.
References fGroupAttributes.
| const std::map< std::string, std::any > & nxH4::PNeXus::GetGroupAttributes | ( | const std::string & | groupPath | ) | const |
Get all attributes for a group.
| groupPath | HDF4 path of the group |
Definition at line 2487 of file PNeXus.cpp.
References fGroupAttributes.
|
inline |
Get the hdf4 library version.
Definition at line 558 of file PNeXus.h.
References fHdf4LibVersion.
|
inline |
Get the hdf4 version of the NeXus file.
Definition at line 564 of file PNeXus.h.
References fHdf4Version.
|
inline |
Get the Idf version of the file.
Definition at line 576 of file PNeXus.h.
References fIdfVersion.
|
inline |
Get the NeXus version of the file.
Definition at line 570 of file PNeXus.h.
References fNeXusVersion.
|
inline |
|
private |
Read datasets for IDF version 1 file structure.
Reads datasets specific to the IDF version 1 NeXus format, which uses a "/run/" group hierarchy. Datasets are organized under paths like:
| sd_id | HDF4 SD interface ID |
Definition at line 544 of file PNeXus.cpp.
References fPrintDebug, ReadFloatDataset(), ReadIntDataset(), and ReadStringDataset().
Referenced by ReadNexusFile().
|
private |
Read datasets for IDF version 2 file structure.
Reads datasets specific to the IDF version 2 NeXus format, which uses a "/raw_data_1/" group hierarchy. Datasets are organized under paths like:
| sd_id | HDF4 SD interface ID |
Definition at line 628 of file PNeXus.cpp.
References fPrintDebug, ReadFloatDataset(), ReadIntDataset(), and ReadStringDataset().
Referenced by ReadNexusFile().
|
inline |
Check if a dataset path exists in the data map.
| path | HDF4 path to check |
Definition at line 602 of file PNeXus.h.
References fDataMap.
Referenced by AddDataset(), AddDatasetAttribute(), ModifyDataset(), RemoveDatasetAttribute(), UpdateDatasetData(), and UpdateDatasetDimensions().
| bool nxH4::PNeXus::HasGroupAttribute | ( | const std::string & | groupPath, |
| const std::string & | attrName ) const |
Check if a group has a specific attribute.
| groupPath | HDF4 path of the group |
| attrName | Attribute name to check |
Definition at line 2471 of file PNeXus.cpp.
References fGroupAttributes.
|
inline |
Modify an existing dataset's data and dimensions.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| newData | New data vector |
| newDimensions | New dimensions vector |
Definition at line 779 of file PNeXus.h.
References fDataMap, and HasDataset().
|
private |
Read dataset attributes and add to PNXdata object.
| T | The data type of the PNXdata object |
| sds_id | HDF4 dataset ID |
| data | PNXdata object to add attributes to |
Definition at line 920 of file PNeXus.cpp.
References nxH4::PNXdata< T >::AddAttribute().
Referenced by ReadFloatDataset(), ReadIntDataset(), and ReadStringDataset().
|
private |
Read a float dataset and store in data map.
| sd_id | HDF4 SD interface ID |
| path | Path to the dataset |
| std::runtime_error | if reading fails |
Definition at line 766 of file PNeXus.cpp.
References fDataMap, FindDatasetIndex(), FindDatasetRefByPath(), nxH4::kFLOAT32, ReadDatasetAttributes(), nxH4::PNXdata< T >::SetData(), nxH4::PNXdata< T >::SetDimensions(), and SplitPath().
Referenced by HandleIdfV1(), and HandleIdfV2().
|
private |
Read an integer dataset and store in data map.
| sd_id | HDF4 SD interface ID |
| path | Path to the dataset |
| std::runtime_error | if reading fails |
Definition at line 690 of file PNeXus.cpp.
References fDataMap, FindDatasetIndex(), FindDatasetRefByPath(), nxH4::kINT32, ReadDatasetAttributes(), nxH4::PNXdata< T >::SetData(), nxH4::PNXdata< T >::SetDimensions(), and SplitPath().
Referenced by HandleIdfV1(), and HandleIdfV2().
| int nxH4::PNeXus::ReadNexusFile | ( | ) |
Read and parse the NeXus HDF4 file.
| std::runtime_error | if file cannot be opened or read |
Definition at line 369 of file PNeXus.cpp.
References CaseInsensitiveEquals(), fFileId, fFileName, fFileNameNxs, fFileTimeNxs, fHdf4Version, fIdfVersion, FindDatasetRefByPath(), fNeXusVersion, fPrintDebug, fSdId, HandleIdfV1(), and HandleIdfV2().
Referenced by PNeXus().
|
private |
Read a string dataset and store in data map.
| sd_id | HDF4 SD interface ID |
| path | Path to the dataset |
| std::runtime_error | if reading fails |
Definition at line 842 of file PNeXus.cpp.
References fDataMap, FindDatasetIndex(), FindDatasetRefByPath(), nxH4::kCHAR8, ReadDatasetAttributes(), nxH4::PNXdata< T >::SetData(), nxH4::PNXdata< T >::SetDimensions(), and SplitPath().
Referenced by HandleIdfV1(), and HandleIdfV2().
|
inline |
|
inline |
Remove an attribute from a dataset.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| attrName | Attribute name to remove |
Definition at line 733 of file PNeXus.h.
References fDataMap, and HasDataset().
| bool nxH4::PNeXus::RemoveGroupAttribute | ( | const std::string & | groupPath, |
| const std::string & | attrName ) |
Remove an attribute from a group.
| groupPath | HDF4 path of the group |
| attrName | Attribute name to remove |
Definition at line 2457 of file PNeXus.cpp.
References fGroupAttributes.
|
inline |
|
staticprivate |
Definition at line 2528 of file PNeXus.cpp.
Referenced by CreateVGroupHierarchy(), FindDatasetRefByPath(), ReadFloatDataset(), ReadIntDataset(), ReadStringDataset(), WriteFloatDataset(), WriteIntDataset(), and WriteStringDataset().
|
inline |
Update the data of an existing dataset.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| newData | New data vector to set |
Definition at line 674 of file PNeXus.h.
References fDataMap, and HasDataset().
|
inline |
Update the dimensions of an existing dataset.
| T | Data type of the PNXdata object |
| path | HDF4 path of the dataset |
| newDimensions | New dimensions vector to set |
Definition at line 693 of file PNeXus.h.
References fDataMap, and HasDataset().
|
private |
Write dataset attributes from PNXdata object.
| T | The data type of the PNXdata object |
| sds_id | HDF4 dataset ID to write attributes to |
| data | PNXdata object containing attributes |
Definition at line 2267 of file PNeXus.cpp.
References nxH4::PNXdata< T >::GetAttributes().
Referenced by WriteFloatDataset(), WriteIntDataset(), and WriteStringDataset().
|
private |
Write root-level file attributes.
| sd_id | HDF4 SD interface ID |
| std::runtime_error | if writing fails |
Definition at line 2079 of file PNeXus.cpp.
References fFileNameNxs, fFileTimeNxs, fGroupAttributes, fHdf4Version, and fNeXusVersion.
Referenced by WriteNexusFile().
|
private |
Write a float dataset with attributes and return its SDS reference.
| sd_id | HDF4 SD interface ID |
| path | Dataset path (leaf name used for SDS name) |
| data | PNXdata object containing data, dimensions, and attributes |
| std::runtime_error | if writing fails |
Definition at line 2172 of file PNeXus.cpp.
References nxH4::PNXdata< T >::GetData(), nxH4::PNXdata< T >::GetDimensions(), SplitPath(), and WriteDatasetAttributes().
Referenced by WriteNexusFile().
|
private |
Write an integer dataset with attributes and return its SDS reference.
| sd_id | HDF4 SD interface ID |
| path | Dataset path (leaf name used for SDS name) |
| data | PNXdata object containing data, dimensions, and attributes |
| std::runtime_error | if writing fails |
Definition at line 2124 of file PNeXus.cpp.
References nxH4::PNXdata< T >::GetData(), nxH4::PNXdata< T >::GetDimensions(), SplitPath(), and WriteDatasetAttributes().
Referenced by WriteNexusFile().
| int nxH4::PNeXus::WriteNexusFile | ( | const std::string & | filename, |
| int | idfVersion = 2 ) |
Write the data map contents to a NeXus HDF4 file.
| filename | Path to the output NeXus HDF4 file |
| idfVersion | IDF version to write (default: 2) |
| std::runtime_error | if file cannot be created or written |
Definition at line 1972 of file PNeXus.cpp.
References CreateVGroupHierarchy(), fDataMap, WriteFileAttributes(), WriteFloatDataset(), WriteIntDataset(), and WriteStringDataset().
|
private |
Write a string dataset with attributes and return its SDS reference.
| sd_id | HDF4 SD interface ID |
| path | Dataset path (leaf name used for SDS name) |
| data | PNXdata object containing data, dimensions, and attributes |
| std::runtime_error | if writing fails |
Definition at line 2220 of file PNeXus.cpp.
References nxH4::PNXdata< T >::GetData(), SplitPath(), and WriteDatasetAttributes().
Referenced by WriteNexusFile().
|
private |
Write attributes to a Vgroup.
| vgroup_id | HDF4 Vgroup ID to write attributes to |
| attributes | Map of attribute names to values |
Definition at line 2316 of file PNeXus.cpp.
Referenced by CreateVGroupHierarchy().
|
private |
Map of HDF4 paths to PNXdata objects.
Definition at line 900 of file PNeXus.h.
Referenced by AddDataset(), AddDatasetAttribute(), ClearDataMap(), Dump(), GetDataMap(), GetDataMap(), GetDataset(), GetDatasetRef(), GetNumDatasets(), HasDataset(), ModifyDataset(), ReadFloatDataset(), ReadIntDataset(), ReadStringDataset(), RemoveDataset(), RemoveDatasetAttribute(), SetDataset(), UpdateDatasetData(), UpdateDatasetDimensions(), and WriteNexusFile().
|
private |
HDF4 file identifier.
Definition at line 899 of file PNeXus.h.
Referenced by FindDatasetRefByPath(), PNeXus(), PNeXus(), ReadNexusFile(), and ~PNeXus().
|
private |
NeXus HDF4 filename.
Definition at line 889 of file PNeXus.h.
Referenced by Dump(), GetFileName(), PNeXus(), and ReadNexusFile().
|
private |
Definition at line 894 of file PNeXus.h.
Referenced by Dump(), ReadNexusFile(), and WriteFileAttributes().
|
private |
Definition at line 895 of file PNeXus.h.
Referenced by Dump(), ReadNexusFile(), and WriteFileAttributes().
|
private |
Map of group paths to their attributes.
Definition at line 901 of file PNeXus.h.
Referenced by AddGroupAttribute(), ClearGroupAttributes(), CreateVGroupHierarchy(), GetGroupAttribute(), GetGroupAttributes(), HasGroupAttribute(), RemoveGroupAttribute(), and WriteFileAttributes().
|
private |
|
private |
HDF4 version of the file.
Definition at line 892 of file PNeXus.h.
Referenced by Dump(), GetHdf4Version(), ReadNexusFile(), and WriteFileAttributes().
|
private |
IDF version of the NeXus file.
Definition at line 890 of file PNeXus.h.
Referenced by Dump(), GetIdfVersion(), and ReadNexusFile().
|
private |
NeXus version of the file.
Definition at line 893 of file PNeXus.h.
Referenced by Dump(), GetNeXusVersion(), ReadNexusFile(), and WriteFileAttributes().
|
private |
if true print additional debug information
Definition at line 888 of file PNeXus.h.
Referenced by HandleIdfV1(), HandleIdfV2(), PNeXus(), and ReadNexusFile().
|
private |
HDF4 SD interface identifier.
Definition at line 898 of file PNeXus.h.
Referenced by FindDatasetRefByPath(), PNeXus(), PNeXus(), ReadNexusFile(), and ~PNeXus().