summaryrefslogtreecommitdiffstats
path: root/c++/src/H5File.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r28049] Merge of r27997-28047 from the trunk.Dana Robinson2015-10-131-42/+42
| | | | | | Tested on: Ubuntu 15.04 (Linux 3.19 x86_64) gcc 4.9.2 serial w/ Fortran and C++ parallel (MPICH 3.1.4) w/ Fortran
* [svn-r27979] Merge of r27961, 27962, and 27966 from trunk.Dana Robinson2015-10-071-0/+1
| | | | | | | C++ changes to address HDFFV-9169 and HDFFV-9167. Tested on: Ubuntu 15.04 (Linux 3.19 x86_64) gcc 4.9.2 (serial only)
* [svn-r27007] Bring revisions #26843:26986 from trunk to revise_chunks. ↵Vailin Choi2015-05-041-17/+14
| | | | h5committested.
* [svn-r26894] Bring revisions #26459 - #26785 from trunk to revise_chunks.Vailin Choi2015-04-221-19/+26
| | | | h5committested.
* [svn-r26861] Bring revisions #26401 - #26459 from trunk to revise_chunks.Vailin Choi2015-04-211-4/+4
| | | | h5committested.
* [svn-r25825] Bring revisions #25509 - #25762 from trunk to revise_chunks.Vailin Choi2014-11-191-5/+13
| | | | h5committested.
* [svn-r25333] Bring revisions #24948 - #25120 from trunk to revise_chunks.Vailin Choi2014-06-191-14/+31
| | | | Tested on jam, ostrich, koala, platypus.
* [svn-r24337] Bring revisions #24200 - #24333 from trunk.Vailin Choi2013-10-211-15/+15
|
* [svn-r24336] Bring revisions #24118 - #24200 from trunk.Vailin Choi2013-10-211-4/+9
|
* [svn-r23601] Bring revisions #23341 - 23597 from trunk to revise_chunks.Vailin Choi2013-04-191-5/+19
| | | | h5committtested.
* [svn-r23599] Bring revisions 22802 : 23085 from trunk to revise_chunks.Vailin Choi2013-04-181-225/+12
| | | | h5committested.
* [svn-r22254] Description:Quincey Koziol2012-04-061-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | Bring r22085:22251 from trunk to revise_chunks branch. Also tackle some testing issues in test/objcopy.c test and clean up some warnings. Tested on: FreeBSD/32 8.2 (loyalty) w/gcc4.6, w/C++ & FORTRAN, in debug mode FreeBSD/64 8.2 (freedom) w/gcc4.6, w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (koala) w/Intel compilers, 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, w/threadsafe, in production mode Linux/PPC 2.6 (ostrich) w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-ia64 2.6 (ember) w/Intel compilers, w/paralle, C++ & FORTRAN, in production mode Mac OS X/32 10.7.3 (amazon) in debug mode Mac OS X/32 10.7.3 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode Mac OS X/32 10.7.3 (amazon) w/parallel, in debug mode
* [svn-r19413] Description:Quincey Koziol2010-09-171-4/+2
| | | | | | | | | | | | | | | | | | | | | | Bring r19349:19411 from trunk to revise_chunks branch. Tested on: FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (amani) w/Intel compilers, 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, w/threadsafe, in production mode Linux/PPC 2.6 (heiwa) w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in debug mode Mac OS X/32 10.6.4 (amazon) in debug mode Mac OS X/32 10.6.4 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode Mac OS X/32 10.6.4 (amazon) w/parallel, in debug mode
* [svn-r15704] I changed the return values of H5Fget_obj_ids and ↵Raymond Lu2008-09-261-6/+6
| | | | | | | | H5Fget_obj_count to ssize_t and modified C++ and Fortran API functions. This is for bug #1245. Tested on smirom, linew, and kagiso.
* [svn-r15407] Purpose: Fix bugBinh-Minh Ribler2008-07-251-3/+3
| | | | | | | | | | | | | | | | | Description: Changed all subclasses' setId to protected p_setId and put back setId in IdComponent. p_setId is used in the library where the id provided by a C API passed on to user's application in the form of a C++ API object, which will be destroyed properly, and so p_setId does not call incRefCount. On the other hand, the public version setId is used by other applications, in which the id passed to setId needs to be closed properly by the application, so setId must call incRefCount for the new object to prevent prematurely closing of the id. Platforms tested: Linux 2.6 (kagiso) SunOS 5.10 (linew) FreeBSD (duty)
* [svn-r15395] When an attribute was opened twice and data was written with ↵Raymond Lu2008-07-221-17/+8
| | | | | | | | | | | one of the handles, the file didn't have the data. It happened because each handle had its own object structure, and the empty one overwrote the data with fill value. This is fixed by making some attribute information like the data be shared in the attribute structure. Tested on smirom, kagiso, and linew.
* [svn-r15309] Purpose: Fixed bugsBinh-Minh Ribler2008-07-021-52/+189
| | | | | | | | | | | | | | | | 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-r14148] Description:Quincey Koziol2007-09-141-0/+2
| | | | | | | | | | | | | | | | Add H5Rget_obj_type() to the API versioning and switch internal routines to use H5Rget_obj_type2() Misc. other code cleanups, etc. Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Linux/64 2.6 (smirom) AIX/32 5.3 (copper) Solaris/32 2.10 (linew) Mac OS X/32 10.4.10 (amazon)
* [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-r12795] Purpose: Fixing bugBinh-Minh Ribler2006-10-221-30/+20
| | | | | | | | | | | | | | | | | | | | | | | | | Description: Wrappers of H5Rcreate had incorrect prototypes. Solution: Added these overloaded functions for H5Rcreate wrapper to IdComponent: void reference(void* ref, const char* name, DataSpace& dataspace, H5R_type_t ref_type = H5R_DATASET_REGION) const; void reference(void* ref, const char* name) const; void reference(void* ref, const H5std_string& name) const; Added these overloaded functions for H5Rdereference: void dereference(IdComponent& obj, void* ref); DataSet(IdComponent& obj, void* ref); Group(IdComponent& obj, void* ref); DataType(IdComponent& obj, void* ref); The incorrect wrappers will be removed after announcing. Platform tested: Linux 2.4 (heping) AIX 5.1 (copper) SunOS 5.8 64-bit (sol)
* [svn-r12404] Purpose: Fix typos/formatsBinh-Minh Ribler2006-06-051-10/+8
| | | | | | | | | | Description: Fixed typos and re-arranged some functions to be in sync with 1.6. Platforms tested: Linux 2.4 (heping) SunOS 5.9 (shanti) AIX 5.1 (copper)
* [svn-r12368] Purpose: Fixed bugBinh-Minh Ribler2006-05-231-14/+16
| | | | | | | | | | | | | | | | | Description: Shanti compiler destroy unnamed objects later than others, which caused some reference counting test fail. Revised the test so that destructors are called at the same time, regardless the differences of compiler implementation. Revised some constructors, close, operator=, and destructors to make sure that all the object ids are handled properly. Platforms tested: Linux 2.4 (heping) SunOS 5.9 (shanti) HPUX 11.00 (kelgia) AIX 5.1 (copper)
* [svn-r12200] Purpose: MaintenanceBinh-Minh Ribler2006-04-051-7/+7
| | | | | | | | | | | | 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-r12185] Purpose: Code cleanupBinh-Minh Ribler2006-03-311-3/+0
| | | | | | | | Description: Removed an empty #ifdef block that was left by mistake. Platforms tested: Linux 2.4 (heping) - very minor
* [svn-r12180] Purpose: MaintenanceBinh-Minh Ribler2006-03-301-10/+7
| | | | | | | | | | | 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-r11845] Purpose: Adding another wrapper/Fixing typosBinh-Minh Ribler2005-12-291-1/+20
| | | | | | | | | | | Description: Added missing member function H5File::flush Fixed parameters passed to H5Awrite Other typos Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol)
* [svn-r11762] Purpose: Adding more wrappersBinh-Minh Ribler2005-12-051-1/+44
| | | | | | | | | | | | | | | | | Description: Added member function H5File::openFile and overloaded for convenience. Added overloaded getObjinfo to skip the middle parameter. Changed StrType(const size_t& size); to StrType(const int dummy, const size_t& size); because the first one clashed with StrType(const hid_t existing_id); Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) HPUX 11.00 (kelgia)
* [svn-r11755] Purpose: Code improvementBinh-Minh Ribler2005-12-031-2/+9
| | | | | | | | | | | | | | | | | Description: There was a workaround for predefined types, in the C++ library, implemented when the C++ library was handling the reference counting of the object ids on its own. Currently, the C++ library is using the available APIs from the C library for that purpose, and there were bugs reported involving that part of the C++ library. So, I decided to remove the workaround completely. Also, improved the use of std members. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) Linux 2.4 w/PGI (colonelk)
* [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-r11264] Purpose: Additional code improvementBinh-Minh Ribler2005-08-181-0/+3
| | | | | | | | | | Description: Used "using" declaration and directive better to reduce namespace pollution. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol)
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-62/+62
| | | | | | | | | | | | | | | | | | | | 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-r11206] Purpose: Additional wrapper/Code improvementBinh-Minh Ribler2005-08-081-6/+44
| | | | | | | | | | | | | | | | Description: Added wrapper for H5Iget_type. Added try/catch to many APIs that call private functions so that more specific information can be provided at failure. Added IdComponent::inMemFunc to help providing specific info. Added const to parameters of several functions that missed that. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) AIX 5.1 (copper) IRIX64 with -n32 (modi4) HPUX 11.00 (kelgia)
* [svn-r11151] Purpose: Fix bugzilla #407 and #408Binh-Minh Ribler2005-07-251-3/+3
| | | | | | | | | | | | | | | | | | | | Description: PropList::copyProp has incorrect prototype; although it works, it does cause users inconvenience. Solution: Added another overloaded function with correct prototype. The old version will be removed in a future release. In the meantime, "Obsolete" will be displayed in its RM page. Also, changed several checks on the returned value of a C API from non-positive to negative because id = 0 is no longer significant, now that the C++ reference counting had been removed. Platforms tested: Linux 2.4 (heping) IRIX64 with -n32 (modi4) Linux 2.4 w/PGI (colonelk)
* [svn-r11060] Purpose: Fix bug (reported by user)Binh-Minh Ribler2005-07-101-30/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description: The use of FileCreatPropList::DEFAULT sometimes caused failure in the reference counting area. This occurs to all the default property lists, which also include FileAccPropList::DEFAULT, DSetCreatPropList::DEFAULT, and DSetMemXferPropList::DEFAULT. H5P_DEFAULT was used to create these default prop lists and because its value is 0, the id of these prop lists are 0, which is rejected by the H5I functions during the reference counting. Solution: The main action to fix the above problem was to use H5P_FILE_CREATE H5P_FILE_ACCESS H5P_DATASET_CREATE H5P_DATASET_XFER to define the default property lists accordingly. Yet, when this fix was applied, some bug in reference counting was revealed. It appeared that some ids were not incremented but were passed in for decrementing. The following actions were then taken to fix and improve the current use of reference counting H5I functions. * added private func IdComponent::p_valid_id to verify that the id is a valid id and can be passed into an H5I function * used p_valid_id to validate an id before calling an H5I functions in the reference-counting member functions incRefCount, decRefCount, and getCounter * changed to use member function incRefCount, decRefCount, and getCounter instead of the C APIs H5Iinc_ref, H5Idec_ref, and H5Iget_ref throughout IdComponent. In addition, overloadings were added for incRefCount, decRefCount, and getCounter to take an id different than the id of the current instance; they can be convenient during debugging. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) AIX 5.1 (copper)
* [svn-r10825] Purpose: Fix RM bugBinh-Minh Ribler2005-05-291-19/+26
| | | | | | | | | | | | | | Description: Doxygen 1.4.2 has a bug that when an \exception immediately follows a \brief, the exception will be displayed prominently in the brief section. Solution: Temporarily added /// to after \brief to work around this problem and notified the Doxygen's author. Platforms tested: Linux 2.4 (heping) - only in documentation sections
* [svn-r10212] Purpose: Added more wrappersBinh-Minh Ribler2005-03-141-0/+17
| | | | | | | | | | | | | | | 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-r10050] Purpose: Fix bugzilla #241Binh-Minh Ribler2005-02-201-2/+10
| | | | | | | | | | | Description: Checked return value from C API for failure condition. Added/Modified some comments appropriately. Platforms tested: Linux 2.4 (heping) AIX 5.1 (copper) - tests passed but there were some old warnings about duplicate symbols on std::string; I'll check on that.
* [svn-r9127] Purpose: Adding wrapper for new C API and other updatesBinh-Minh Ribler2004-08-201-47/+70
| | | | | | | | | | | | | 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-r9049] Purpose: Clean up codeBinh-Minh Ribler2004-08-071-18/+0
| | | | | | | | | | | | | Description: Removed private functions p_close, that were left over from the removal of the reference counting mechanism. Platforms tested: SunOS 5.7 (arabica) Linux 2.4 (eirene) Misc. update: release_docs/RELEASE will be updated soon.
* [svn-r8849] Purpose: Adding documentation with doxygen and fixing minor bugBinh-Minh Ribler2004-07-091-3/+4
| | | | | | | | | | | | Description: Added function headers with doxygen. Changed H5File::getFileSize according to C library. Platforms tested: Linux 2.4 (eirene) FreeBSD 4.10 (sleipnir) Misc. update:
* [svn-r8837] Purpose: Update doc and fix minor bugBinh-Minh Ribler2004-07-081-8/+8
| | | | | | | | | | | Description: H5IdComponent.cpp: initialized a pointer to NULL H5Object.cpp: removed functions being added by mistake Update function headers for the rest. Platforms tested: SunOS 5.7 (arabica) Linux 2.4 (eirene)
* [svn-r8820] Purpose: Bug fixRaymond Lu2004-07-071-3/+5
| | | | | | | Description: After changing H5Fget_filesize, forgot to update C++. Platforms tested: Tested for 1.6
* [svn-r8746] Purpose:Binh-Minh Ribler2004-06-281-2/+3
| | | | | | | | | | | | Fixing minor bug Description The new function H5File::getFileSize was missing a return statement. Added one. Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene)
* [svn-r8739] Purpose: New feature and Bug fixRaymond Lu2004-06-241-0/+18
| | | | | | | | | | | | Description: 1. Added H5Fget_filesize and test(in file_handle.c) which returns the actual file size of an opened file. Also added to C++ API and test. 2. The error tests were messed up in test/Makefile.in. Solution: 1. Call H5FDget_eof to return file size. 2. Corrected. Platforms tested: h5committest Misc. update: RELEASE.txt
* [svn-r8602] Purpose:Quincey Koziol2004-06-011-8/+6
| | | | | | | | | | | Code update Description: Update C++ wrappers to use new ID reference counting mechanisms. Platforms tested: FreeBSD 4.9 (sleipnir) w/C++ Too focused to require h5committest
* [svn-r8595] Purpose:Binh-Minh Ribler2004-05-281-3/+3
| | | | | | | | | | | | | | 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-r8588] Purpose:Binh-Minh Ribler2004-05-271-19/+91
| | | | | | | | | | | | | | | | | | | Add C++ wrappers - incrementally check-in Description Added wrapper for these C APIs: H5Rcreate H5Rget_obj_type H5Rget_region This is an incremental check-in to preserve the code, corresponding tests will follow in a few weeks. Platforms: Linux 2.4 (eirene) I'm checking the code out and test on arabica too. Misc. update:
* [svn-r8576] Purpose:Binh-Minh Ribler2004-05-261-1/+9
| | | | | | | | | | | | | | | | | | | | | | | 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-r8569] Purpose:Binh-Minh Ribler2004-05-241-0/+1
| | | | | | | | | | | | | | | | | | | Add/Correct documentation Description: Added doxygen documentation to: Exception.cpp H5CompType.cpp H5FcreatProp.cpp and corrected some typos in comments for: H5AbstractDs.cpp H5EnumType.cpp H5File.cpp Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene)
* [svn-r8532] Purpose:Binh-Minh Ribler2004-05-161-43/+23
| | | | | | | | | | | | | | | | | | | Add more C++ wrappers and documentation - incrementally check-in Description: Added wrapper for: H5Tdetect_class Also, added Doxygen documentation to existing member functions of AtomType and DataType. Test for the new wrapper will follow in a few weeks. Some typos and small format changes are done in H5File.cpp. Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene) Windows 2000