mirror of
https://github.com/HDFGroup/hdf5.git
synced 2026-10-08 23:44:08 +03:00
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
59 lines
1.8 KiB
C++
59 lines
1.8 KiB
C++
// C++ informative line for the emacs editor: -*- C++ -*-
|
|
// Class AbstractDs is an abstract base class, from which Attribute and
|
|
// DataSet inherit. It provides the services that are common to both
|
|
// Attribute and DataSet. It also inherits from H5Object and passes down
|
|
// the services that H5Object provides.
|
|
|
|
#ifndef _AbstractDs_H
|
|
#define _AbstractDs_H
|
|
|
|
#ifndef H5_NO_NAMESPACE
|
|
namespace H5 {
|
|
#endif
|
|
class __DLLCPP__ AbstractDs : public H5Object {
|
|
public:
|
|
// Gets the dataspace of this abstract dataset - pure virtual
|
|
virtual DataSpace getSpace() const = 0;
|
|
|
|
// Gets the class of the datatype that is used by this abstract
|
|
// dataset
|
|
H5T_class_t getTypeClass() const;
|
|
|
|
// Gets a copy the datatype of that this abstract dataset uses.
|
|
// Note that this datatype is a generic one and can only be accessed
|
|
// via generic member functions, i.e., member functions belong
|
|
// to DataType. To get specific datatype, i.e. EnumType, FloatType,
|
|
// etc..., use the specific functions, that follow, instead .
|
|
DataType getDataType() const;
|
|
|
|
// Gets a copy of the specific datatype of this abstract dataset
|
|
EnumType getEnumType() const;
|
|
CompType getCompType() const;
|
|
IntType getIntType() const;
|
|
FloatType getFloatType() const;
|
|
StrType getStrType() const;
|
|
|
|
// Copy constructor
|
|
AbstractDs( const AbstractDs& original );
|
|
|
|
virtual ~AbstractDs();
|
|
|
|
protected:
|
|
// Default constructor
|
|
AbstractDs();
|
|
|
|
// Constructor that takes an attribute id or a dataset id.
|
|
AbstractDs( const hid_t ds_id );
|
|
|
|
private:
|
|
// This member function is implemented by DataSet and Attribute
|
|
virtual hid_t p_getType() const = 0;
|
|
|
|
// This member function is implemented by DataSet and Attribute
|
|
virtual void p_close() const = 0;
|
|
};
|
|
#ifndef H5_NO_NAMESPACE
|
|
}
|
|
#endif
|
|
#endif // _AbstractDs_H
|