summaryrefslogtreecommitdiffstats
path: root/c++/src
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r5487] Purpose:Quincey Koziol2002-05-302-15/+0
| | | | | | | | | | | | | | Bug fix Description: H5Ewalk_cb was being called from a C++ API, when it really is an internal routine to the H5E interface. Solution: Removed C++ API wrapper for it. Platforms tested: FreeBSD 4.5 (sleipnir)
* [svn-r5428] Binh-Minh Ribler2002-05-164-2/+81
| | | | | | | | | | | | | | | Purpose: New Feature - per library change Description: Added the new member function getMemberIndex to classes EnumType and CompType to match the new C API H5Tget_member_index. Given the name of a member of an enumeration or compound datatype, this new function queries the index of the member. Platforms: SunOS 5.7 (arabica) Linux 6.2 (eirene)
* [svn-r5427] Purpose:Binh-Minh Ribler2002-05-162-3/+48
| | | | | | | | | | | | | | | | | | New Feature - per library change Description: Added new member function DataSet::fillMemBuf for the new C API H5Dfill. Quincey's description of H5Dfill is as followed: Added new H5Dfill() routine to fill the elements in a selection for a memory buffer with a fill value. This is a user API wrapper around some internal routines which were needed for the fill-value modifications from Raymond as well as Pedro's code for reducing the size of a chunked dataset. Platforms: SunOS 5.7 (arabica) Linux 6.2 (eirene)
* [svn-r5270] Purpose: bug fixBinh-Minh Ribler2002-04-262-0/+6
| | | | | | | | | | Description: The default constructor of H5File was missing. It's now added. Platforms: SunOS 5.7 (arabica) Linux 6.2 (eirene) IRIX 6.5.11 (modi4)
* [svn-r5032] Binh-Minh Ribler2002-03-032-2/+2
| | | | | | | | | | | Purpose: Code cleanup Description: DataType::convert: changed the 'nelmts' parameter from size_t to hsize_t according to hdf5 library change. Platforms tested: SunOS 5.7 (arabica) Linux 6.2 (eirene)
* [svn-r5031] Binh-Minh Ribler2002-03-021-2/+4
| | | | | | | | | Purpose: Minor bug fix Description: Added #ifdef for windows about a #pragma Platforms tested: IRIX64 (modi4)
* [svn-r5030] Binh-Minh Ribler2002-03-018-10/+10
| | | | | | | | | | | | Purpose: Small bug fixing Description: Replaced NULL by 0 for initializing or passing null "string". The problem showed up on platinum. Platforms tested: SunOS 5.7 (arabica) Linux 6.2 (eirene) IA-32 Linux Cluster (platinum)
* [svn-r5029] Binh-Minh Ribler2002-03-012-4/+24
| | | | | | | | | | | | | Purpose: Adding new member function Description: Added PropList::copyProp according to the new api H5Pcopy_prop in the C library. I'm still working on adding more tests so test for this will be added as well. Platforms tested: SunOS 5.7 (arabica) Linux 6.2 (eirene) FreeBSD 4.4 (sleipnir)
* [svn-r5005] Purpose:Binh-Minh Ribler2002-02-252-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | DLL accommodation Description: In the inline constructor below: DSetCreatPropList() : PropList( H5P_DATASET_CREATE) {} H5P_DATASET_CREATE causes the famous "unresolved symbol" error when building the Release version of dsets_cpp with DLL. H5P_DATASET_CREATE uses H5P_CLS_DATASET_CREATE_g, which is imported from hdf5dll. The inline constructor used in dsets.cpp causes the use of H5P_CLS_DATASET_CREATE_g, which is then considered undefined because dsets_cppdll is not using hdf5dll. This only occurs in the Release version because the Debug build disables inline. Solution: Made the affected constructor not inlined, i.e., its implementation went in the cpp file. Note that this problem does not occur in 1.4 branch because H5P_DATASET_CREATE was defined differently, i.e., did not involve external storage. Platforms tested: SunOS 5.7 (arabica) Linux 6.2 (eirene) Windows 2000
* [svn-r4977] Binh-Minh Ribler2002-02-1628-39/+44
| | | | | | | | | | | | | | | | | | | | | | | 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-r4805] Binh-Minh Ribler2002-01-091-1/+3
| | | | | | | | | | | | Purpose: Bug fix Description: In several if statements, '>' was used in place of '<='. This caused exceptions thrown inappropriately. Replaced '>' by '<=' where applicable. Platforms tested: SunOS 5.7 (arabica) Windows 98
* [svn-r4713] Binh-Minh Ribler2001-12-132-2/+2
| | | | | | | | | | | Purpose: Removing warnings Description: H5IdComponent::operator= shouldn't be virtual because the subclass' operator= have different type for the rhs argument. Removed virtual. Platforms tested: SunOS 5.7 (arabica) Linux 6.2 (eirene)
* [svn-r4707] Binh-Minh Ribler2001-12-125-17/+7
| | | | | | | | | | | | Purpose: Bug fixing Description: H5IdComponent::operator= shouldn't be virtual because the subclass' operator= have different type for the rhs argument. Removed virtual Platforms tested: SunOS 5.7 (arabica) IRIX64 (modi4) - only tested that the warnings went away, still working on other configuration problems.
* [svn-r4680] Purpose:Quincey Koziol2001-12-062-0/+4
| | | | | | | | | | | | | Code cleanup Description: Property that H5P(g|s)et_hyper_cache uses is no longer in use inside the library. Solution: Removed H5P(g|s)et_hyper_cache API functions, except when backward compatibility is turned on. When backward compatibility is turned on, the property is defined by the library, but unused internally. Platforms tested: FreeBSD 4.4 (sleipnir)
* [svn-r4676] Purpose:Quincey Koziol2001-12-052-0/+33
| | | | | | | | | | | | | | | | Backward Compatibility Fix Description: One of H5P[gs]et_buffer's parameters changed between v1.4 and the development branch. Solution: Added v1.4 compat stuff around H5P[gs]et_buffer implementation and testing to allow v1.4.x users to continue to use their source code without modification. These changes are for everything except the FORTRAN wrappers - I spoke with Elena and she will make the FORTRAN wrapper changes. Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4670] Purpose:Quincey Koziol2001-12-052-0/+31
| | | | | | | | | | | | | | | | Backward Compatibility Fix Description: One of H5P[gs]et_sym_k's parameters changed between v1.4 and the development branch. Solution: Added v1.4 compat stuff around H5P[gs]et_sym_k implementation and testing to allow v1.4.x users to continue to use their source code without modification. These changes are for everything except the FORTRAN wrappers - I spoke with Elena and she will make the FORTRAN wrapper changes. Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4669] Purpose:Quincey Koziol2001-12-052-0/+29
| | | | | | | | | | | | | | | | Backward Compatibility Fix Description: One of H5P[gs]et_cache's parameters changed between v1.4 and the development branch. Solution: Added v1.4 compat stuff around H5P[gs]et_cache implementation and testing to allow v1.4.x users to continue to use their source code without modification. These changes are for everything except the FORTRAN wrappers - I spoke with Elena and she will make the FORTRAN wrapper changes. Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4668] Binh-Minh Ribler2001-12-051-36/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | Purpose: Eliminated warnings Description: On IRIX and Windows 98, if a function, that returns a value, throws an exception in "else" statement, the compiler still complains that the function doesn't return a value. Solution: Replaced: if (something valid) return a value else throw an exception with: if (something invalid) throw an exception return a value Platforms tested: Windows 98 SunOS 5.7 (arabica) Linux 6.2 (eirene) IRIX64 (modi4) - only tested that the warnings went away, still working on other configuration problems.
* [svn-r4605] Binh-Minh Ribler2001-11-142-7/+17
| | | | | | | | | | | | | | | Purpose: Bug fix Description: Add the overloaded member function Attribute::getName to return the attribute name's length as in C API. This functionality was missing. Note that the current getName that returns "string" is not removed, for different way of using getName. Platforms tested: SunOS 5.7 (arabica) Windows 98
* [svn-r4583] Raymond Lu2001-11-025-5/+5
| | | | | | | | | Purpose: Switch from old property list to new generic property list. Description: Changed C++ according to the new generic property list. Platforms tested: FreeBSD, SunOS 5.7.
* [svn-r4580] Binh-Minh Ribler2001-10-314-5/+14
| | | | | | | | | | | | | | Purpose: Bug fixing Description: + added operator= to PredType + removed 'using namespace std' from H5RefCounter.cpp because it's not used and leaving it there requires #include some standard header file + added 'using namespace std' in H5Exception.cpp Platforms tested: SunOS 5.7 (arabica) Windows 98
* [svn-r4573] Raymond Lu2001-10-251-2/+1
| | | | | | | Purpose: Switch mount property list to the new generic property list. Platforms tested: IRIX64 6.5, SunOS 5.7, FreeBSD.
* [svn-r4569] Raymond Lu2001-10-241-1/+0
| | | | | | | | | Purpose: Generic Property List Change Description: Changed file access list to the new generic list. Platforms tested: IRIX64, SunOS5.7, FreeBSD
* [svn-r4553] Purpose:Quincey Koziol2001-10-172-4/+4
| | | | | | | | Bug fix. Description: Fix int/unsigned problem in C++ wrapper API Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4542] Raymond Lu2001-10-151-2/+0
| | | | | | | Purpose: Changed to the new generic property list. Description: Took out H5P_FILE_CREATE from constructor definition.
* [svn-r4516] Raymond Lu2001-10-031-1/+1
| | | | | | | Purpose: Changed to the new generic property list Platforms tested: Arabica and Hawkwind
* [svn-r4482] Purpose:Quincey Koziol2001-09-267-38/+27
| | | | | | | | | | | | | | | | | | | | | | Kludge Description: Since we're only about halfway through converting the internal use of property lists from the "old way" to the generic property lists, we turned off snapshots to avoid exposing lots of API changes to users, until the APIs settled down. Getting the snapshots rolling again seems to have become a priority, so some changes are going to have to be made now that were going to be postponed until we were completely finished with the conversion. This requires that the old API functions be able to deal with both the old and new property lists smoothly. Solution: Kludge together the property list code so that they can transparently handle dealing with both the old and new property lists Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4366] Purpose:Binh-Minh Ribler2001-08-162-2/+2
| | | | | | | | | | | | | Code cleanup Description: Changed prototype for the buffer in Attribute::write from "void *" to "const void *" Platforms tested: FreeBSD 4.4 (hawkwind) SunOS 5.7 (arabica) Linux 6.2 (eirene)
* [svn-r4324] Purpose:Quincey Koziol2001-08-102-4/+24
| | | | | | | | | | | | | | | | | | | | | | | | New Features! Description: Start migrating the internal use of property lists in the library from the older implementation to the new generic property lists. Currently, only the dataset transfer property lists are migrated to the new architecture, all the rest of the property list types are still using the older architecture. Also, the backward compatibility features are not implemented yet, so applications which use dataset transfer properties may need to make the following changes: H5Pcreate(H5P_DATASET_XFER) -> H5Pcreate_list(H5P_DATASET_XFER_NEW) and H5Pclose(<a dataset transfer property list>) -> H5Pclose_list(id) This still may have some bugs in it, especially with Fortran, but I should be wrapping up those later today. Platforms tested: FreeBSD 4.4 (hawkwind)
* [svn-r4298] Bill Wendling2001-08-011-0/+3
| | | | | Purpose: Regenerated Dependencies Files
* [svn-r4181] Purpose:Quincey Koziol2001-07-102-2/+2
| | | | | | | | | Bug Fix, Code Cleanup, Code Optimization, etc. Description: Fold in the hyperslab speedups, clean up compile warnings and change a few things from using 'unsigned' or 'hsize_t' to use 'size_t' instead. Platforms tested: FreeBSD 4.3 (hawkwind), Solaris 2.7 (arabica), Irix64 6.5 (modi4)
* [svn-r3707] Purpose: Bug fixes and code clean upBinh-Minh Ribler2001-03-2513-173/+552
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Description and Solution: - Predefined type objects become outdated when the application calls H5close and then H5open to use the library again. Solution: + Reimplemented PredType using enum type to obtain up-to-date values for predefined types, i.e. H5T_xxx_yyy's, when they are used. + Added to PredType its own version of getId() to return the appropriate predefined type id according to the enum value. + Made IdComponent::getId() a virtual function - Since Albert already fixed the "multiply defined RcsId" problem, removed the now become unnessary "#undef RCSID" from H5Include.h - Added a check for func_name != NULL in one of the Exception constructors because seg. fault. might occur in some situations. - It is more convenient to make a copy of a datatype, dataspace, or property list by using assignment operator Solution: + Added assignment operator to DataType, DataSpace, and PropList so that they will invoke H5Tcopy, H5Scopy, and H5Pcopy, respectively, instead of just simply copying the data members as for other classes. So, now a type, space, or property list can be copied by either : mytype = original_type, or mytype.copy(original_type) Note that copy constructors are still just copying the data members. + Added an assignment operator to DataType that takes a predefined type. + Made IdComponent::operator= a virtual function Platforms tested: arabica (sparc-sun-solaris 2.7)
* [svn-r3602] Binh-Minh Ribler2001-03-1028-320/+497
| | | | | | | | | | | | | | | | | | | | | Purpose: Usability enhancement Description: - Added more information about the failure to all the throw's, i.e, member function name and more detail about the failure, where appropriate. Also, added exception throws for private functions, such as p_close to provide more specific details. - Added two api functions: Exception::getFuncName() and Exception::getCFuncName() to provide the name of the member function where failure occurs. - Fixed some typos, one of which caused segn. fault in some situations (resetIdComponent was accidentally called twice in a couple of places :) Platforms: arabica (sparc-sun-solaris 2.7)
* [svn-r3550] Binh-Minh Ribler2001-03-062-7/+7
| | | | | | | | | | | | | Purpose: Bug fix Description: The Exception destructor accidently called H5Eprint, which caused error messages to be printed where they are not supposed to because the failures are expected. Solution: Removed that lousy call! Platforms tested: arabica (sparc-sun-solaris 2.7)
* [svn-r3540] Purpose:Binh-Minh Ribler2001-03-0234-81/+66
| | | | | | | | | | | | | | | | | | | | 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-0230-3/+32
| | | | | | | | | 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-r3337] Binh-Minh Ribler2001-01-311-1/+1
| | | | | | | | | | | Purpose: Small bug fix Description: A stub function has returned type hsize_t but returns -1. Solution: Changed returned value from -1 to 0 Platforms tested: Solaris (arabica)
* [svn-r3293] Purpose:Bill Wendling2001-01-161-0/+0
| | | | | | | | | | | | Fixup Description: We were specifying a config file for the C++ stuff and it didn't need one. This would cause problems with compiling the C++ stuff since it wouldn't get the correct H5config.h file. Solution: Removed support for it. Platforms tested: Eirene
* [svn-r3199] Binh-Minh Ribler2000-12-2329-226/+146
| | | | | | | | | | | | | | | | | | Purpose: bug fix Description: I found a couple of places where virtual destructors were missing and could cause small memory leaks. Also, some destructors were not virtual when they should be. Solution: - added virtual destructors, which also free dynamically allocated memory - added virtual to several destructors - also, fixed several typos Platforms tested: Solaris 2.7 (arabica)
* [svn-r3122] Purpose:Binh-Minh Ribler2000-12-136-204/+106
| | | | | | | | | | | | | | | | Fix and improve Description: - Put functions that are common to H5File and Group into a prototype class, CommonFG. I didn't do that before because of the fear of the consequences of multiple inheritance, since H5File and Group already inherit from different super classes. I recently read a C++ book and learned to use MI more safely. This change reduced some more of code redundancy. - Added missing const to some function parameters Platforms tested: Solaris/CC 5.0 (arabica)
* [svn-r3121] Purpose:Binh-Minh Ribler2000-12-135-738/+272
| | | | | | | | | | | | | | | | | Fix and improve Description: - Put functions that are common to H5File and Group into a prototype class, CommonFG. I didn't do that before because of the fear of the consequences of multiple inheritance, since H5File and Group already inherit from different super classes. I recently read a C++ book and learned to use MI more safely. This change reduced some more of code redundancy. - Added missing const to some function parameters - Added missing return statements for some functions. Platforms tested: Solaris/CC 5.0 (arabica)
* [svn-r3114] Purpose: FixBinh-Minh Ribler2000-12-1212-14/+39
| | | | | | | | | | | | | | | | | | | | Description: Dec CC compiler doesn't support some new c++ features. Some typos caused compilation erros on Dec Alpha. Solution: - Added macro BOOL_NOTDEFINED to define bool type on Dec Alpha (gondolin) since its compiler doesn't support bool. - Added macro NO_STATIC_CAST to prevent the use of the new c++ feature static_cast since Dec CC compiler doesn't support. - Added const to parameters of some functions to match the functions' declaration and definition. Typos errors and Dec CC complained. Platform: Solaris (arabica). Also tried to build on Dec Alpha but still not linked due to some missing compiler flags; its compilation went fine though.
* [svn-r3090] Purpose:Bill Wendling2000-12-071-7/+7
| | | | | | | | | | | Fix Description: Windows couldn't handle the .C extension. The filenames had to be changed to *.cpp instead. Solution: Changed in the Makefiles to accomodate said change. Platforms tested: Eyeballed.
* [svn-r3082] Purpose:Binh-Minh Ribler2000-12-077-746/+0
| | | | | | | Renaming source files for portability Description: Removed *.C files after adding the corresponding *.cpp files. Platforms tested:
* [svn-r3081] Binh-Minh Ribler2000-12-0718-3962/+0
| | | | | | | | Purpose: Renaming source files for portability Description: Removed *.C files after adding the corresponding *.cpp files. Platforms tested:
* [svn-r3080] Binh-Minh Ribler2000-12-0725-0/+4715
| | | | | | | | | | | Purpose: Support portability Description: I forgot that source file extension .C will not work on Windows. Solution: Changed all source file from *.C to *.cpp for portability. Platforms tested: arabica (sparc-sun-solaris 2.7)
* [svn-r3079] Purpose: bug fix - by C APIBinh-Minh Ribler2000-12-064-10/+17
| | | | | | | | | | | | | | | | | Description: The prototype of two C API functions, H5Tget_offset and H5Sget_simple_extent_npoints was changed to fix bug #446, resulting in the need for updating the two corresponding C++ API functions. Solution: - Changed the return type of AtomType::getOffset from size_t to int, and the error return value from 0 to -1. - Changed the return type of DataSpace::getSimpleExtentNpoints from hsize_t to hssize_t, and the error value from 0 to -1. Platforms tested: arabica (sparc-sun-solaris 2.7)
* [svn-r3074] Purpose:Bill Wendling2000-12-041-0/+2
| | | | | | | | | | | Improvement Description: Made the Makefiles better. Solution: Added standard macros concerning where things are place. Like libraries and so forth. Platforms tested: Linux
* [svn-r2932] Purpose:Bill Wendling2000-11-151-2/+2
| | | | | | | | Changed to handle tracing in C++ files. Description: Pointed to the correct ``trace'' program (the one in hdf5/bin/) Platforms tested: Linux
* [svn-r2926] Purpose:Bill Wendling2000-11-151-0/+0
| | | | Needed Dependencies file