diff --git a/src/external/nexus/PNeXus.cpp b/src/external/nexus/PNeXus.cpp index 80ae1950..f564f1c9 100644 --- a/src/external/nexus/PNeXus.cpp +++ b/src/external/nexus/PNeXus.cpp @@ -27,6 +27,46 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +/** + * @file PNeXus.cpp + * @brief Implementation of the PNeXus class - NeXus HDF4/HDF5 file reader and writer + * + * This file contains the implementation of the PNeXus class for reading and + * writing ISIS muon NeXus HDF5 files. It provides case-insensitive path + * lookup functionality using the HDF4 C / HDF5 C++ API. + * + * The implementation includes: + * + * **Read Functionality:** + * - String utilities for case-insensitive comparison + * - Path parsing for HDF4 / HDF5 hierarchical paths + * - Recursive path traversal with case-insensitive matching + * - Attribute, group, and dataset lookup functions + * - Support for IDF version 1 and 2 + * + * **Write Functionality:** + * - Group hierarchy creation + * - Dataset writing for int, float, and string types + * - Attribute preservation + * - Multi-dimensional array support + * - Type-safe operations using PNXdata template class + * + * **Error Handling:** + * - Comprehensive error handling with descriptive exceptions + * - Validation of data consistency + * - HDF4 error propagation / HDF5 exception propagation + * + * @author Andreas Suter + * @date 2007-2026 + * @copyright GNU General Public License v2 + * @version 1.0 + * + * @see nxH4::PNeXus + * @see nxH4::PNXdata + * @see nxH5::PNeXus + * @see nxH5::PNXdata + */ + #include #include #include