H5LcreatProp.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. // C++ informative line for the emacs editor: -*- C++ -*-
  2. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  3. * Copyright by The HDF Group. *
  4. * Copyright by the Board of Trustees of the University of Illinois. *
  5. * All rights reserved. *
  6. * *
  7. * This file is part of HDF5. The full HDF5 copyright notice, including *
  8. * terms governing use, modification, and redistribution, is contained in *
  9. * the COPYING file, which can be found at the root of the source code *
  10. * distribution tree, or in https://www.hdfgroup.org/licenses. *
  11. * If you do not have access to either file, you may request a copy from *
  12. * help@hdfgroup.org. *
  13. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  14. #ifndef H5LinkCreatPropList_H
  15. #define H5LinkCreatPropList_H
  16. namespace H5 {
  17. /*! \class LinkCreatPropList
  18. \brief Class LinkCreatPropList inherits from PropList and provides
  19. wrappers for the HDF5 link creation property list.
  20. */
  21. // Inheritance: PropList -> IdComponent
  22. class H5_DLLCPP LinkCreatPropList : public PropList {
  23. public:
  24. ///\brief Default link creation property list.
  25. static const LinkCreatPropList &DEFAULT;
  26. // Creates a link creation property list.
  27. LinkCreatPropList();
  28. ///\brief Returns this class name.
  29. virtual H5std_string
  30. fromClass() const override
  31. {
  32. return ("LinkCreatPropList");
  33. }
  34. // Copy constructor: same as the original LinkCreatPropList.
  35. LinkCreatPropList(const LinkCreatPropList &original);
  36. // Creates a copy of an existing link creation property list
  37. // using the property list id.
  38. LinkCreatPropList(const hid_t plist_id);
  39. // Specifies in property list whether to create missing
  40. // intermediate groups
  41. void setCreateIntermediateGroup(bool crt_intmd_group) const;
  42. // Determines whether property is set to enable creating missing
  43. // intermediate groups
  44. bool getCreateIntermediateGroup() const;
  45. // Sets the character encoding of the string.
  46. void setCharEncoding(H5T_cset_t encoding) const;
  47. // Gets the character encoding of the string.
  48. H5T_cset_t getCharEncoding() const;
  49. // Noop destructor
  50. virtual ~LinkCreatPropList() override;
  51. #ifndef DOXYGEN_SHOULD_SKIP_THIS
  52. // Deletes the global constant, should only be used by the library
  53. static void deleteConstants();
  54. private:
  55. static LinkCreatPropList *DEFAULT_;
  56. // Creates the global constant, should only be used by the library
  57. static LinkCreatPropList *getConstant();
  58. #endif // DOXYGEN_SHOULD_SKIP_THIS
  59. }; // end of LinkCreatPropList
  60. } // namespace H5
  61. #endif // H5LinkCreatPropList_H