summaryrefslogtreecommitdiffstats
path: root/c++/src/H5Object.h
Commit message (Collapse)AuthorAgeFilesLines
* Fixed documentationBinh-Minh Ribler2018-03-131-13/+0
| | | | | | | | Description: - Updated the description of copy constructor for clarification. - Removed unnecessary comments. Platforms tested: Linux/64 (jelly)
* Miscellaneous code cleanupBinh-Minh Ribler2017-09-151-3/+2
| | | | | | | | | | | | | Description: - Removed two inadvertently-added Group constructors in the header file. There was no implementation. - Removed deprecated H5Location and H5Object constructors that take an existing ID. - Miscellaneous improvements in comments, including updating URLs. Platforms tested: Linux/32 2.6 (jam) Linux/64 (jelly) Darwin (osx1010test)
* New overloaded functions and testsBinh-Minh Ribler2017-09-121-5/+3
| | | | | | | | | | | | | | | Description: - Added VarLenType::VarLenType(const DataType& base_type) - Marked VarLenType::VarLenType(const DataType* base_type) deprecated - Added a static wrapper for H5Tdetect_class for PredType static bool DataType::detectClass(const PredType& pred_type, ...) - Removed the deprecated function Exception::printError() from code - Miscellaneous improvements in comments - Added test functions test_detect_type_class() and test_vltype() Platforms tested: Linux/32 2.6 (jam) Linux/64 (jelly) Darwin (osx1010test)
* Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to ↵Larry Knox2017-04-251-6/+4
| | | | | | | | | | hdf5_1_10 * commit '54957d37f5aa73912763dbb6e308555e863c43f4': Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes. Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh. Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1 Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
* Description:Binh-Minh Ribler2017-03-171-2/+2
| | | | | | | Miscellaneous clean-up: format and comments Platforms tested: Linux/64 (jelly) Darwin (osx1010test)
* Description:Binh-Minh Ribler2017-03-031-68/+68
| | | | | | Only format changes: mostly tabs vs. spaces Platforms tested: Linux/64 (jelly) - very minor
* Purpose: Add new wrappersBinh-Minh Ribler2016-12-281-9/+12
| | | | | | | | | | | | | | Description: Added wrappers H5Location::exists() for H5Lexists. Added wrapper H5Object::objVersion() to return the header version of an HDF5 object. Added new class LinkAccPropList to be used by H5Location::exists() Added new exception: ObjHeaderIException for H5Object::objVersion() Rearranged source files in Makefile.am Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test)
* Description:Binh-Minh Ribler2016-10-191-4/+0
| | | | | | | | | | | | Removed obsolet macros from C++ API: H5_NO_NAMESPACE, H5_NO_STD, __cplusplus Leave OLD_HEADER_FILENAME because iostream.h might still be in use, until further checking is done. Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test) Jelly
* Purpose: Updated documentationBinh-Minh Ribler2016-09-271-27/+22
| | | | | | | | | Description: Revised class brief description and other comments for up-to-date info. Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test)
* Purpose: Fix bug HDFFR-9920 cont.Binh-Minh Ribler2016-09-211-0/+2
| | | | | | | | | | | | | Description: Adding user's test revealed a flaw in the fix. Moved CommonFG's functions in Group to H5Location, so that they could be called by objects that can be used to specify a location Also, rearranged many "#include" header files to resolve conflicts. Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test)
* [svn-r30311] Purpose: Fix bug HDFFR-9920 cont.Binh-Minh Ribler2016-08-221-5/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | trunk: Description: Continued rearranging the classes to model the relationship of HDF5 objects more accurately. The changes included: - in the baseclass list of Attribute, changed "public IdComponent" to "public H5Location", because location sometime can be specified with attribute - moved H5A wrappers in H5Location to H5Object because H5A functions can't be called on attribute id - removed the stubs Attribute::iterateAttrs and Attribute::renameAttr - removed Attribute::getFileName and Attribute::flush, because H5Location has them - result of the modified partial class diagram, regarding Attribute IdComponent | H5Location AbstractDs / \ / H5Object Attribute Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test)
* [svn-r30272] Purpose: Code improvementBinh-Minh Ribler2016-08-091-1/+1
| | | | | | | | | | | Description: - Added "const" to arguments that should be const - Added "const" to const functions, i.e., function that don't change the objects they operate on. Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test)
* [svn-r26457] Purpose: Fix warnings HDFFV-8658Binh-Minh Ribler2015-03-151-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | Description: The following two constructors of classes: AbstractDs, IdComponent, H5Location, and H5Object are no longer appropriate after the data member "id" had been moved from IdComponent to the sub-classes. The copy constructors are noop and will be generated by the compilers if needed so they can be removed in 1.8.15 without effecting applications. The other constructors will be removed from 1.10 release, and then from 1.8 if their removal does not raise any problems in at least two 1.10 releases. <Classname>(const hid_t h5_id); <Classname>(const <Classname>& original); Deprecation warnings are added to each of these classes. The other classes are changed to call the default constructor instead of one of the constructors above. Platforms tested: Linux/64 (platypus) Linux/32 2.6 (jam) SunOS 5.11 (emu)
* [svn-r24969] Description:Binh-Minh Ribler2014-04-061-1/+7
| | | | | | | | | | | | | | - Added wrappers to H5Object for H5Iget_name() to get object's name ssize_t getObjName(char *obj_name, size_t buf_size = 0) const; ssize_t getObjName(H5std_string& obj_name, size_t len = 0) const; H5std_string getObjName() const; - Added tests tobject.cpp - Added to various cleanup_* functions in tests to remove generated files - Added an overload H5I_type_t getHDFObjType() to get object's type Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) SunOS 5.11 (emu) with gmake
* [svn-r24291] Description:Binh-Minh Ribler2013-10-151-0/+6
| | | | | | | | | - Added a lot of documentation to classes for Reference Manual. - Fixed some format inconsistencies Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) Linux/64 2.6 (koala)/PGI compilers
* [svn-r24189] Purpose: Fixed bug HDFFV-1060Binh-Minh Ribler2013-09-231-3/+3
| | | | | | | | Description: Changed header guards from single underscore to double underscore. Platforms tested: Linux/32 2.6 (jam) - very minor Linux/64 2.6 (koala)/PGI compilers
* [svn-r24143] Description:Binh-Minh Ribler2013-09-161-1/+1
| | | | | | | Fixed comments, documentation, and mis-matched DOXYGEN_SHOULD_SKIP_THIS pairs. Platforms tested: Linux/32 2.6 (jam) Regenerated and verified generated documentation.
* [svn-r22845] Purpose: Misc fixesBinh-Minh Ribler2012-09-281-19/+1
| | | | | | | | | | Description: Fixed miscellaneous inconsistencies and typos, which also took care of the failure in Packet Table test on daily test today. Platforms tested: Linux/32 2.6 (jam) Linux/64 2.6 (koala) Mac Lion (duck)
* [svn-r22836] Purpose: Fix bug HDFFV-533 and add other missing functionsBinh-Minh Ribler2012-09-271-66/+15
| | | | | | | | | | | | | | | | | | | | | | Description: In this bug, H5File doesn't have the ability to create attribute. The following changes will provide that functionality and several others that were also missing: - Added an abstract class H5Location in between IdComponent and H5Object. - New class structure of IdComponent, H5Location, H5Object, H5File IdComponent | H5Location / \ H5Object H5File - Wrappers in H5Object were moved to H5Location because the related C functions take either file, group, dataset, or named datatype ID. - Added wrapper for H5Rget_obj_type2 - Added tests for file attributes and H5Rget_obj_type2 wrapper Platforms tested: Linux/32 2.6 (jam) Linux/64 2.6 (koala) SunOS 5.10 (linew)
* [svn-r15959] Description:Binh-Minh Ribler2008-10-271-3/+8
| | | | | | | | | | | | Added missing wrappers for H5Rdereference. Also, for these wrappers, improved exception handlings to report specific overloaded functions, where failure occurs. Will do the same for more functions later... Platforms tested: Linux 2.6 (kagiso) SunOS 5.10 (linew) FreeBSD (duty)
* [svn-r15308] Purpose: Fixed bugsBinh-Minh Ribler2008-07-021-2/+27
| | | | | | | | | | | | | | | | Description: The class hierarchy was revised to address the problem reported in bugzilla #1068. Classes AbstractDS and Attribute are moved out of H5Object. Class Attribute now multiply inherits from IdComponent and AbstractDs and class DataSet from H5Object and AbstractDs. In addition, data member IdComponent::id was moved into subclasses: Attribute, DataSet, DataSpace, DataType, H5File, Group, and PropList. Platforms tested: SunOS 5.10 (linew) Linux 2.6 (kagiso) FreeBSD (duty)
* [svn-r14180] Description:Quincey Koziol2007-10-041-1/+0
| | | | | | | | | | | | | | | | | | | Make H5Aiterate() versioned and change all internal use to H5Aiterate2() Leave some regression tests that exercise H5Aiterate1() Fix attribute display in h5dump & h5ls to be "by name" by default Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r12200] Purpose: MaintenanceBinh-Minh Ribler2006-04-051-6/+6
| | | | | | | | | | | | Description: Changed to alias string instead of std, i.e. H5std_string instead of H5std, because the old way wasn't working when std didn't exist. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) HPUX 11.00 (kelgia) - this was the problematic platform but I wasn't able to test before.
* [svn-r12180] Purpose: MaintenanceBinh-Minh Ribler2006-03-301-6/+6
| | | | | | | | | | | Description: Added alias H5_std so either the global or std namespace can be used, depending on H5_NO_STD. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) AIX 5.1 (copper)
* [svn-r11487] Purpose:Quincey Koziol2005-10-011-12/+12
| | | | | | | | | | | Code cleanup Description: Tweak copyright on C++ source files to reduce whining by copyright checking script. Platforms tested: FreeBSD 4.11 (sleipnir) w/C++
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-4/+4
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10212] Purpose: Added more wrappersBinh-Minh Ribler2005-03-141-0/+4
| | | | | | | | | | | | | | | Description: Added the following to the C++ library + overloaded functions: string CommonFG::getObjnameByIdx(hsize_t idx) H5T_order_t AtomType::getOrder() + wrappers for H5*close + wrappers for H5Arename, H5Aget_storage_size, and H5Dget_storage_size Platforms tested: Linux 2.4 (heping) AIX 5.1 (copper) SunOS 5.8 64-bit (sol)
* [svn-r9127] Purpose: Adding wrapper for new C API and other updatesBinh-Minh Ribler2004-08-201-9/+15
| | | | | | | | | | | | | Description: Added wrappers for H5Fget_name: H5File::getFileName H5Object::getFileName Moved some functions from Group into the base class CommonFG for H5File too. Platforms tested: SunOS 5.7 (arabica) Linux 2.4 (eirene)
* [svn-r9046] Purpose:Binh-Minh Ribler2004-08-071-5/+1
| | | | | | | | | | | | | | | | | | | Code cleanup Description: DataType::commit had incorrect parameter, H5Object. Changed it to CommonFG, for H5File and Group. The change caused additional header files needed for several other cpp files. Moved some functions from Group into the base class CommonFG for H5File too. Platforms tested: SunOS 5.7 (arabica) Linux 2.4 (eirene) Misc. update:
* [svn-r8595] Purpose:Binh-Minh Ribler2004-05-281-14/+2
| | | | | | | | | | | | | | Add/Improve documentation Description Added doxygen documentation to H5PredType.cpp and made minor changes to the others for either correction or clarification. Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene) Misc. update:
* [svn-r8584] Purpose:Binh-Minh Ribler2004-05-261-2/+5
| | | | | | | | | | | | | | | Add another wrapper - incrementally check-in Description: Added an overloaded wrapper for H5Rcreate to H5Object.* and tests will be added later. Also, corrected some comments. Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene) Misc. update:
* [svn-r8576] Purpose:Binh-Minh Ribler2004-05-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | Add more C++ wrapper and documentation - incrementally check-in Description: Added doxygen documentation to: H5DataSet.cpp H5DataSpace.cpp H5CommonFG.cpp and a wrapper for H5Rcreate to H5Object.* with tests will be added later. There are more documentation need to be added to these files but to preserve the changes, I check them in now. Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene) Misc. update:
* [svn-r6236] Purpose: CopyrightBinh-Minh Ribler2003-01-071-0/+14
| | | | | | | | | Description: Added copyright notice to C++ API files, including *.h, *.cpp, and Makefile.in Platforms: Linux 6.2 (eirene)
* [svn-r5932] MuQun Yang2002-09-201-2/+2
| | | | | | | | | Purpose: use H5_DLLCPP to replacer __DLLCPP__ for c++ interfaces. Description: Solution: Platforms tested: linux 2.2.18smp, IRIX64, solaris 2.7, windows 2000
* [svn-r4977] Binh-Minh Ribler2002-02-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Purpose: Adding support for dll Description: Added __DLLCPP__ to all public classes and templates. Added #include "H5Include.h" to H5RefCounter.cpp because of the use of DLLCPP in .h file and it needs the following chain: H5Include.h/hdf5.h/H5public.h/H5api_adpt.h Added #pragma warning(disable: 4251) to H5Exception.h to eliminate this warning on private data members of type 'string.' This occurs because 'string' is not yet instantiated at compilation time; however, since the class is exported, the warning is harmless. Changed this member function's parameter to be passed as reference. from: void CompType::insertMember( const string name,... to: void CompType::insertMember( const string& name,... Platforms tested: Linux 6.2 (eirene) Windows 2000
* [svn-r3540] Purpose:Binh-Minh Ribler2001-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | Feasibility improvement Description: - Some member functions in class Exception can be called without an Exception instance exits, but because they are not static, they cannot. - Many exception throwings don't provide any information to callers. Solution: - Add 'static' to several member functions in class Exception. - Added <class name::function name> to some exceptions thrown in H5File.cpp and H5FcreatProp.cpp. I'm trying this for users' comments. More information may be added later and to all exceptions. - Changed the comment line for emacs editor to: // C++ informative line for the emacs editor: -*- C++ -*- because... I'd rather not say that the code "may look like C" :-) Platforms tested: Linux (gcc version egcs-2.91.66)
* [svn-r3534] Purpose:Bill Wendling2001-03-021-0/+1
| | | | | | | | | Bug Fix Description: Added comments to the top of C++ files to indicate that it's a C++ file and not a C source code file. Also added a macro which makes emacs automagically enter c++-mode. (Recommended by Frank Schimmel fschimme@monsoon.CAPS.ou.edu)
* [svn-r2897] Purpose:Binh-Minh Ribler2000-11-141-0/+88
C++ API for 1.3.x branch Description: The *.C and *.h files named different than those in 1.2.x. They are in the form: 'H5' + classname, or just classname if the classname is already prefixed with 'H5' to avoid ambiguity in documentation context. This version has several hidden bugs fixed and an improvement on the reference counting approach. The classes and their inheritance structure are listed below: --------------------------------------- H5Library Exception RefCounter IdComponent H5File DataSpace H5Object Group AbstractDs DataSet Attribute DataType PredType EnumType CompType AtomType StrType IntType FloatType PropList FileCreatPropList FileAccPropList DSetCreatPropList DSetMemXferPropList --------------------------------------- IdComponent uses RefCounter to keep track of opened objects so proper termination of HDF5 objects can be maintained. Each class has a .h file containing the class declaration and a .C file containing its definition. In addition to the classes files, the following files do not have class information: - H5Cpp.h: header file to be included in user's application - H5Idtemplates.h: contains a template function used by several classes - H5Classes.h: contains forward class declarations - H5CommonFG.*: contains common code used by classes H5File and Group - H5Include.h: contains the hdf5.h header file and the #undef RCSID to work around the problem: multiple defined RcsId - H5Alltypes.h: simply serves as a container to hold the header files of all datatypes to simplify the header file inclusion Platforms: Solaris (arabica) and Linux