summaryrefslogtreecommitdiffstats
path: root/c++/src/H5Group.h
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r24867] Description:Binh-Minh Ribler2014-03-221-2/+0
| | | | | | | | | | - Added a null terminator to the comment returned from the C call, in getComment methods - Some minor cleanup Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) Linux/64 2.6 (platypus)/PGI compilers
* [svn-r24291] Description:Binh-Minh Ribler2013-10-151-3/+8
| | | | | | | | | - 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-r24188] Purpose: Fixed bug introduced in r24163Binh-Minh Ribler2013-09-231-6/+4
| | | | | | | | | | | | | Description: - The failure in daily test was caused by missing initialization of member "id" in a few constructors. This is now fixed. - Added two overloaded H5Location::setComment - Improved some error reporting in H5Location - Improved error reporting in tests Platforms tested: Linux/32 2.6 (jam) SunOS 5.11 (emu) Linux/64 2.6 (koala)/PGI compilers
* [svn-r24178] Back out the changes that cause daily test to fail r24163Binh-Minh Ribler2013-09-201-4/+6
|
* [svn-r24163] Purpose: More on HDFFV-7520 and HDFFV-533Binh-Minh Ribler2013-09-191-6/+4
| | | | | | | | | | | | Description: - Improved the changes in revisions r22836 and r23438, mainly on the wrappers of reference, dereference, get region, and set/getcomment. - Added more tests. Platforms tested: Linux/32 2.6 (jam) SunOS 5.11 (emu) Linux/ppc64 (ostrich)
* [svn-r24162] backing out a commit that includes wrong filesBinh-Minh Ribler2013-09-191-4/+6
|
* [svn-r24161] Purpose: More on HDFFV-7520 and HDFFV-533Binh-Minh Ribler2013-09-191-6/+4
| | | | | | | | | | | Description: - Completed the changes in revisions r22836 and r23438 with improvement on wrappers such as reference, dereference, get region, and set/getcomment. - Added more tests. Platforms tested: Linux/32 2.6 (jam) SunOS 5.11 (emu) Linux/ppc64 (ostrich)
* [svn-r24143] Description:Binh-Minh Ribler2013-09-161-0/+2
| | | | | | | 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-1/+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-5/+0
| | | | | | | | | | | | | | | | | | | | | | 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-2/+3
| | | | | | | | | | | | 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-r15407] Purpose: Fix bugBinh-Minh Ribler2008-07-251-1/+4
| | | | | | | | | | | | | | | | | 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-r15308] Purpose: Fixed bugsBinh-Minh Ribler2008-07-021-9/+8
| | | | | | | | | | | | | | | | 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-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | 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-6/+6
| | | | | | | | | | 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-r12200] Purpose: MaintenanceBinh-Minh Ribler2006-04-051-3/+3
| | | | | | | | | | | | 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-3/+3
| | | | | | | | | | | 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-r11755] Purpose: Code improvementBinh-Minh Ribler2005-12-031-1/+1
| | | | | | | | | | | | | | | | | 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-r11206] Purpose: Additional wrapper/Code improvementBinh-Minh Ribler2005-08-081-0/+4
| | | | | | | | | | | | | | | | 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-r10212] Purpose: Added more wrappersBinh-Minh Ribler2005-03-141-0/+3
| | | | | | | | | | | | | | | 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-r9129] Purpose: Updating documentationBinh-Minh Ribler2004-08-201-5/+5
| | | | | | | | | | Description: Updated various function headers for the RM as reviewing progresses. Rearranged functions in header files for more sensible look of the RM. Platforms tested: SunOS 5.7 (arabica) Linux 2.4 (eirene)
* [svn-r9046] Purpose:Binh-Minh Ribler2004-08-071-33/+17
| | | | | | | | | | | | | | | | | | | 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-r8602] Purpose:Quincey Koziol2004-06-011-4/+0
| | | | | | | | | | | 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-r8588] Purpose:Binh-Minh Ribler2004-05-271-0/+13
| | | | | | | | | | | | | | | | | | | 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-r8269] Purpose:Binh-Minh Ribler2004-03-221-1/+1
| | | | | | | | | | | | | | | | | | | | | Cleaning up warnings Description: Many exception constructors have warnings about reference to temporary location because of the parameter initialization, for example, "const string& var = 0." Solution: Changed "string&" parameters to pass by value for these constructors. Consequently, passing string by value also takes care of char pointers so the overloaded constructors for char pointers are then removed. Also, instead of setting Exception::detailMessage to null string, I set it to DEFAULT_MSG ("No detailed information provided") by default. Platforms: SunOS 5.7 (arabica) Linux 2.4 (eirene) IA-64 (titan)
* [svn-r6303] Purpose:Binh-Minh Ribler2003-01-211-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | new functions Description: Added these member functions to class Group per the new C functions H5Gget_num_objs, H5Gget_objname_by_idx and H5Gget_objtype_by_idx: // Returns the number of objects in the group. hsize_t getNumObjs() const; // Retrieves the name of an object in a given group by giving index ssize_t getObjnameByIdx(hsize_t idx, string& name, size_t size) const; // Returns the type of an object in a given group by giving index; // the overloaded function also provided the object type in text as // "group" for H5G_GROUP // "dataset" for H5G_DATASET // "datatype" for H5G_TYPE int getObjTypeByIdx(hsize_t idx) const; int getObjTypeByIdx(hsize_t idx, string& type_name) const; Platforms: SunOS 5.7 (arabica) Linux 6.2 (eirene) IRIX 6.5.11 (modi4)
* [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-1/+1
| | | | | | | | | 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-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 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-r3602] Binh-Minh Ribler2001-03-101-1/+2
| | | | | | | | | | | | | | | | | | | | | 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-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-r3122] Purpose:Binh-Minh Ribler2000-12-131-84/+5
| | | | | | | | | | | | | | | | 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-r2897] Purpose:Binh-Minh Ribler2000-11-141-0/+115
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