NetCDF-C++  4.3.1-developer
netCDF::NcType Class Reference

Base class inherited by NcOpaque, NcVlen, NcCompound and NcEnum classes. More...

#include "ncType.h"

Inheritance diagram for netCDF::NcType:

Public Types

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
}
 List of netCDF types that can be represented. More...
 

Public Member Functions

 NcType ()
 Constructor generates a null object. More...
 
 NcType (const netCDF::NcGroup &grp, const std::string &name)
 Constructor for a non-global type. More...
 
 NcType (const netCDF::NcGroup &grp, nc_type id)
 Constructor for a non-global type. More...
 
 NcType (nc_type id)
 Constructor for a global type This object describes the "essential" information for a netCDF global type. More...
 
 NcType (const NcType &rhs)
 The copy constructor. More...
 
virtual ~NcType ()
 destructor More...
 
nc_type getId () const
 The netCDF Id of this type. More...
 
std::string getName () const
 The name of this type. More...
 
netCDF::NcGroup getParentGroup () const
 Gets parent group. More...
 
size_t getSize () const
 The size in bytes. More...
 
ncType getTypeClass () const
 The type class returned as enumeration type. More...
 
std::string getTypeClassName () const
 Return a string containing the name of the enumerated type. More...
 
bool isNull () const
 Returns true if this object is null (i.e. More...
 
bool operator!= (const NcType &) const
 != operator More...
 
bool operator== (const NcType &) const
 equivalence operator More...
 

Protected Member Functions

NcTypeoperator= (const NcType &rhs)
 assignment operator More...
 

Protected Attributes

int g_fileId
 An ncid associated with a particular open file (returned from nc_open). More...
 
int groupId
 the group Id More...
 
nc_type myId
 the type Id More...
 
bool nullObject
 

Friends

bool operator< (const NcType &lhs, const NcType &rhs)
 comparator operator More...
 
bool operator> (const NcType &lhs, const NcType &rhs)
 comparator operator More...
 

Detailed Description

Base class inherited by NcOpaque, NcVlen, NcCompound and NcEnum classes.

Definition at line 14 of file ncType.h.

Member Enumeration Documentation

List of netCDF types that can be represented.

The enumeration list contains the complete set of netCDF variable types. In addition, the type NC_TYPE is included. This enables the user to instantiate a netCDF type object without explcitly needing to know it precise type.

Enumerator
nc_BYTE 

signed 1 byte integer

nc_CHAR 

ISO/ASCII character.

nc_SHORT 

signed 2 byte integer

nc_INT 

signed 4 byte integer

nc_FLOAT 

single precision floating point number

nc_DOUBLE 

double precision floating point number

nc_UBYTE 

unsigned 1 byte int

nc_USHORT 

unsigned 2-byte int

nc_UINT 

unsigned 4-byte int

nc_INT64 

signed 8-byte int

nc_UINT64 

unsigned 8-byte int

nc_STRING 

string

nc_VLEN 

"NcVlen type"

nc_OPAQUE 

"NcOpaque type"

nc_ENUM 

"NcEnum type"

nc_COMPOUND 

"NcCompound type"

Definition at line 25 of file ncType.h.

Constructor & Destructor Documentation

NcType::NcType ( )

Constructor generates a null object.

Definition at line 44 of file ncType.cpp.

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

Constructor for a non-global type.

This object describes the "essential" information for all netCDF types required by NcVar, NcAtt objects. New netCDF types can be added using the appropriate "add" method in the NcGroup object.

Parameters
grpParent NcGroup object.
nameName of this type.
NcType::NcType ( const netCDF::NcGroup grp,
nc_type  id 
)

Constructor for a non-global type.

This object describes the "essential" information for all netCDF types required by NcVar, NcAtt objects. New netCDF types can be added using the appropriate "add" method in the NcGroup object.

Parameters
grpParent NcGroup object.
idtype id

Definition at line 66 of file ncType.cpp.

NcType::NcType ( nc_type  id)

Constructor for a global type This object describes the "essential" information for a netCDF global type.

Parameters
idtype id

Definition at line 58 of file ncType.cpp.

NcType::NcType ( const NcType rhs)

The copy constructor.

Definition at line 36 of file ncType.cpp.

virtual netCDF::NcType::~NcType ( )
inlinevirtual

destructor

Definition at line 78 of file ncType.h.

Member Function Documentation

nc_type netCDF::NcType::getId ( ) const
inline

The netCDF Id of this type.

Definition at line 88 of file ncType.h.

string NcType::getName ( ) const

The name of this type.

For atomic types, the CDL type names are returned. These are as follows:

  • NcByte String returned is "byte".
  • NcUbyte String returned is "ubyte".
  • NcChar String returned is "char".
  • NcShort String returned is "short".
  • NcUshort String returned is "ushort".
  • NcInt String returned is "int".
  • NcUint String returned is "uint".
  • NcInt64 String returned is "int64".
  • NcUint64 String returned is "uint64".
  • NcFloat String returned is "float".
  • NcDouble String returned is "double".
  • NcString String returned is "string".

Definition at line 94 of file ncType.cpp.

NcGroup NcType::getParentGroup ( ) const

Gets parent group.

For an atomic type, returns a Null object.

Definition at line 89 of file ncType.cpp.

size_t NcType::getSize ( ) const

The size in bytes.

This function will work on any type, including atomic and any user defined type, whether compound, opaque, enumeration, or variable length array.

Definition at line 108 of file ncType.cpp.

NcType::ncType NcType::getTypeClass ( ) const

The type class returned as enumeration type.

Valid for all types, whether atomic or user-defined. User-defined types are returned as one of the following enumeration types: nc_VLEN, nc_OPAQUE, nc_ENUM, or nc_COMPOUND.

Definition at line 116 of file ncType.cpp.

string NcType::getTypeClassName ( ) const

Return a string containing the name of the enumerated type.

(ie one of the following strings: "nc_BYTE", "nc_CHAR", "nc_SHORT", "nc_INT", "nc_FLOAT", "nc_DOUBLE", "nc_UBYTE", "nc_USHORT", "nc_UINT", "nc_INT64", "nc_UINT64", "nc_STRING", "nc_VLEN", "nc_OPAQUE", "nc_ENUM", "nc_COMPOUND"

Definition at line 144 of file ncType.cpp.

bool netCDF::NcType::isNull ( ) const
inline

Returns true if this object is null (i.e.

it has no contents); otherwise returns false.

Definition at line 133 of file ncType.h.

bool NcType::operator!= ( const NcType rhs) const

!= operator

Definition at line 83 of file ncType.cpp.

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

assignment operator

Definition at line 27 of file ncType.cpp.

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

equivalence operator

Definition at line 74 of file ncType.cpp.

Friends And Related Function Documentation

bool operator< ( const NcType lhs,
const NcType rhs 
)
friend

comparator operator

Definition at line 12 of file ncType.cpp.

bool operator> ( const NcType lhs,
const NcType rhs 
)
friend

comparator operator

Definition at line 18 of file ncType.cpp.

Field Documentation

int netCDF::NcType::g_fileId
protected

An ncid associated with a particular open file (returned from nc_open).

This is required by many of the functions ncType uses, such as nc_inq_type

Definition at line 158 of file ncType.h.

int netCDF::NcType::groupId
protected

the group Id

Definition at line 152 of file ncType.h.

nc_type netCDF::NcType::myId
protected

the type Id

Definition at line 149 of file ncType.h.


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

Return to the Main Unidata NetCDF page.
Generated on Fri Nov 11 2016 15:28:29 for NetCDF-C++. NetCDF is a Unidata library.