00001 // C++ informative line for the emacs editor: -*- C++ -*- 00002 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00003 * Copyright by The HDF Group. * 00004 * Copyright by the Board of Trustees of the University of Illinois. * 00005 * All rights reserved. * 00006 * * 00007 * This file is part of HDF5. The full HDF5 copyright notice, including * 00008 * terms governing use, modification, and redistribution, is contained in * 00009 * the files COPYING and Copyright.html. COPYING can be found at the root * 00010 * of the source code distribution tree; Copyright.html can be found at the * 00011 * root level of an installed copy of the electronic HDF5 document set and * 00012 * is linked from the top-level documents page. It can also be found at * 00013 * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * 00014 * access to either file, you may request a copy from help@hdfgroup.org. * 00015 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 00016 00017 #ifndef _H5StrType_H 00018 #define _H5StrType_H 00019 00020 #ifndef H5_NO_NAMESPACE 00021 namespace H5 { 00022 #endif 00023 00024 class H5_DLLCPP StrType : public AtomType { 00025 public: 00026 // Creates a string type using a predefined type 00027 StrType(const PredType& pred_type); 00028 00029 // Creates a string type with specified length - may be obsolete 00030 StrType(const PredType& pred_type, const size_t& size); 00031 00032 // Creates a string type with specified length 00033 StrType(const int dummy, const size_t& size); 00034 00035 // Gets the string datatype of the specified dataset 00036 StrType(const DataSet& dataset); 00037 00038 // Retrieves the character set type of this string datatype. 00039 H5T_cset_t getCset() const; 00040 00041 // Sets character set to be used. 00042 void setCset(H5T_cset_t cset) const; 00043 00044 // Retrieves the string padding method for this string datatype. 00045 H5T_str_t getStrpad() const; 00046 00047 // Defines the storage mechanism for character strings. 00048 void setStrpad(H5T_str_t strpad) const; 00049 00051 virtual H5std_string fromClass () const { return("StrType"); } 00052 00053 // default constructor 00054 StrType(); 00055 00056 // Creates a string datatype using an existing id 00057 StrType(const hid_t existing_id); 00058 00059 // Copy constructor - makes a copy of the original object 00060 StrType(const StrType& original); 00061 00062 // Noop destructor. 00063 virtual ~StrType(); 00064 }; 00065 #ifndef H5_NO_NAMESPACE 00066 } 00067 #endif 00068 #endif