netcdf-C++
Public Member Functions | List of all members
netCDF::NcCompoundType Class Reference

#include <ncCompoundType.h>

Inheritance diagram for netCDF::NcCompoundType:
Inheritance graph
[legend]

Public Member Functions

void addMember (const std::string &memName, const NcType &newMemberType, size_t offset)
 
void addMember (const std::string &memName, const NcType &newMemberType, size_t offset, const std::vector< int > &shape)
 
NcType getMember (int memberIndex) const
 
size_t getMemberCount () const
 
int getMemberDimCount (int memberIndex) const
 
int getMemberIndex (const std::string &memberName) const
 
std::string getMemberName (int memberIndex) const
 
size_t getMemberOffset (const int index) const
 
std::vector< int > getMemberShape (int memberIndex) const
 
 NcCompoundType ()
 
 NcCompoundType (const NcCompoundType &rhs)
 
 NcCompoundType (const NcGroup &grp, const std::string &name)
 
 NcCompoundType (const NcType &ncType)
 
NcCompoundTypeoperator= (const NcCompoundType &rhs)
 
NcCompoundTypeoperator= (const NcType &rhs)
 
bool operator== (const NcCompoundType &rhs)
 
 ~NcCompoundType ()
 
- Public Member Functions inherited from netCDF::NcType
nc_type getId () const
 
std::string getName () const
 
netCDF::NcGroup getParentGroup () const
 
size_t getSize () const
 
ncType getTypeClass () const
 
std::string getTypeClassName () const
 
bool isNull () const
 
 NcType ()
 
 NcType (const NcType &rhs)
 
 NcType (const netCDF::NcGroup &grp, const std::string &name)
 
 NcType (const netCDF::NcGroup &grp, nc_type id)
 
 NcType (nc_type id)
 
bool operator!= (const NcType &) const
 
bool operator== (const NcType &) const
 
virtual ~NcType ()
 

Additional Inherited Members

- Public Types inherited from netCDF::NcType
enum  ncType {
  nc_BYTE = NC_BYTE, nc_CHAR = NC_CHAR, nc_SHORT = NC_SHORT, nc_INT = NC_INT,
  nc_FLOAT = NC_FLOAT, nc_DOUBLE = NC_DOUBLE, nc_UBYTE = NC_UBYTE, nc_USHORT = NC_USHORT,
  nc_UINT = NC_UINT, nc_INT64 = NC_INT64, nc_UINT64 = NC_UINT64, nc_STRING = NC_STRING,
  nc_VLEN = NC_VLEN, nc_OPAQUE = NC_OPAQUE, nc_ENUM = NC_ENUM, nc_COMPOUND = NC_COMPOUND
}
 
- Protected Member Functions inherited from netCDF::NcType
NcTypeoperator= (const NcType &rhs)
 
- Protected Attributes inherited from netCDF::NcType
int g_fileId
 
int groupId
 
nc_type myId
 

Detailed Description

Class represents a netCDF compound type

Constructor & Destructor Documentation

◆ NcCompoundType() [1/4]

NcCompoundType::NcCompoundType ( )

Constructor generates a null object.

◆ NcCompoundType() [2/4]

netCDF::NcCompoundType::NcCompoundType ( const NcGroup grp,
const std::string &  name 
)

Constructor. The compound Type must already exist in the netCDF file. New netCDF compound types can be added using NcGroup::addNcCompoundType();

Parameters
grpThe parent group where this type is defined.
nameName of new type.

◆ NcCompoundType() [3/4]

NcCompoundType::NcCompoundType ( const NcType ncType)

Constructor. Constructs from the base type NcType object. Will throw an exception if the NcType is not the base of a Compound type.

Parameters
ncTypeA Nctype object.

◆ NcCompoundType() [4/4]

NcCompoundType::NcCompoundType ( const NcCompoundType rhs)

The copy constructor.

◆ ~NcCompoundType()

netCDF::NcCompoundType::~NcCompoundType ( )
inline

destructor

Member Function Documentation

◆ addMember() [1/2]

void netCDF::NcCompoundType::addMember ( const std::string &  memName,
const NcType newMemberType,
size_t  offset 
)
  Adds a named field.
  \param memName       Name of new field.
  \param newMemberType The type of the new member.
  \param offset        Offset of this member in bytes, obtained by a call to offsetof. For example 

the offset of a member "mem4" in structure struct1 is: offsetof(struct1,mem4).

◆ addMember() [2/2]

void netCDF::NcCompoundType::addMember ( const std::string &  memName,
const NcType newMemberType,
size_t  offset,
const std::vector< int > &  shape 
)

Adds a named array field.

Parameters
memNameName of new field.
newMemberTypeThe type of the new member.
offsetOffset of this member in bytes, obtained by a call to offsetof. For example the offset of a member "mem4" in structure struct1 is: offsetof(struct1,mem4).
shapeThe shape of the array field.

◆ getMember()

NcType NcCompoundType::getMember ( int  memberIndex) const

Returns a NcType object for a single member.

◆ getMemberCount()

size_t NcCompoundType::getMemberCount ( ) const

Returns number of members in this NcCompoundType object.

◆ getMemberDimCount()

int NcCompoundType::getMemberDimCount ( int  memberIndex) const

Returns the number of dimensions of a member with the given index.

Parameters
Indexof member (numbering starts at zero).
Returns
The number of dimensions of the field. Non-array fields have 0 dimensions.

◆ getMemberIndex()

int NcCompoundType::getMemberIndex ( const std::string &  memberName) const

Returns index of named member field.

◆ getMemberName()

std::string NcCompoundType::getMemberName ( int  memberIndex) const

Returns name of member field.

◆ getMemberOffset()

size_t NcCompoundType::getMemberOffset ( const int  index) const

Returns the offset of the member with given index.

◆ getMemberShape()

vector< int > NcCompoundType::getMemberShape ( int  memberIndex) const

Returns the shape of a given member.

Parameters
Indexof member (numbering starts at zero).
Returns
The size of the dimensions of the field. Non-array fields have 0 dimensions.

◆ operator=() [1/2]

NcCompoundType & NcCompoundType::operator= ( const NcCompoundType rhs)

assignment operator

◆ operator=() [2/2]

NcCompoundType & NcCompoundType::operator= ( const NcType rhs)

Assignment operator. This assigns from the base type NcType object. Will throw an exception if the NcType is not the base of a Compound type.

◆ operator==()

bool NcCompoundType::operator== ( const NcCompoundType rhs)

equivalence operator


The documentation for this class was generated from the following files: