16 #ifndef INC_netcdf_NcGroup_h
17 #define INC_netcdf_NcGroup_h
65 typedef std::multimap<std::string, NcType>
NcTypeMap;
69 typedef std::multimap<std::string, NcVar>
NcVarMap;
72 typedef std::multimap<std::string, NcDim>
NcDimMap;
85 std::string
const groupName);
100 std::string
GetName(
bool fullName=
false)
const;
135 std::string
const name,
148 std::string
const name,
180 std::string
const name,
197 std::string
const name,
209 std::string
const name,
213 NcVar AddVar(std::string
const name, std::string
const typeName)
const;
229 std::string
const name,
230 std::string
const typeName,
231 std::string
const dimName)
const;
244 std::string
const name,
246 const NcDim& ncDim)
const;
259 std::string
const name,
260 std::string
const typeName,
261 const std::vector<std::string>& dimNames)
const;
274 std::string
const name,
276 const std::vector<NcDim>& ncDimVector)
const;
303 std::string
const name,
309 std::string
const & name,
311 size_t & attLength)
const;
329 std::string
const name,
341 std::string
const name,
345 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const unsigned char* dataValues )
const;
348 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const signed char* dataValues )
const;
355 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const short* dataValues )
const;
359 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const unsigned short* dataValues )
const;
363 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const int* dataValues )
const;
367 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const long* dataValues )
const;
371 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const unsigned int* dataValues )
const;
377 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const float* dataValues )
const;
381 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const double* dataValues )
const;
385 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const long long* dataValues )
const;
389 NcGroupAtt PutAtt ( std::string
const name,
NcType const & type,
size_t len,
const unsigned long long* dataValues )
const;
392 NcGroupAtt PutAtt ( std::string
const name,
size_t len,
const char** dataValues )
const;
393 NcGroupAtt PutAtt ( std::string
const name, std::string
const & dataValues )
const;
394 NcGroupAtt PutAtt (std::string
const name, std::vector< std::string >
const & strVec );
411 NcGroupAtt PutAtt (std::string
const name,
NcType const & type,
size_t len,
const void* dataValues)
const;
477 NcDim AddDim (std::string
const name,
size_t const dimSize)
const;
531 std::string
const & name,
553 std::string
const & name,
567 std::string
const & name,
578 std::string
const name,
588 std::string
const name,
599 std::string
const name,
609 std::string
const name,
639 virtual void Rename (std::string
const &) {}
NcVlenType AddVlenType(std::string const name, NcType &basetype) const
Definition: NcGroup.cpp:1514
NcGroup GetParentGroup() const
Definition: NcGroup.cpp:104
ncType
Definition: NcType.h:56
std::set< NcGroupAtt > NcGroupAttSet
Definition: NcGroup.h:77
bool IsRootGroup() const
Definition: NcGroup.cpp:99
ncEnumType
Definition: NcEnumType.h:32
void GetCoordVar(std::string &coordVarName, NcDim &ncDim, NcVar &ncVar, NcGroup::Location location=Current) const
Definition: NcGroup.cpp:1587
Select from set of parent groups(includes the current group).
Definition: NcGroup.h:48
Select from contents of parents groups.
Definition: NcGroup.h:55
Select from contents of current and parents groups.
Definition: NcGroup.h:57
std::set< NcVar > NcVarSet
Definition: NcGroup.h:71
std::pair< std::string, NcDim > NcDimPair
Definition: NcGroup.h:73
NcDim GetDim(std::string const name, NcGroup::Location const location=Current) const
Definition: NcGroup.cpp:1204
Represents a netCDF dimension.
Definition: NcDim.h:26
NcType GetType(std::string const &name, NcGroup::Location location=Current) const
Definition: NcGroup.cpp:1474
std::set< NcDim > NcDimSet
Definition: NcGroup.h:74
std::map< std::string, NcGroup > NcGroupMapUnique
Definition: NcGroup.h:61
NcVarMap GetVars(NcGroup::Location location=Current) const
Definition: NcGroup.cpp:337
bool operator<(NcGroup const &rhs) const
Definition: NcGroup.cpp:49
Represents a netCDF enum type.
Definition: NcEnumType.h:27
std::string const & GetName() const
Definition: NcItem.h:63
std::multimap< std::string, NcVar > NcVarMap
Definition: NcGroup.h:69
Represents a netCDF VLEN type.
Definition: NcVlenType.h:25
Select from contents of current and child groups.
Definition: NcGroup.h:58
int GetDimCount(NcGroup::Location const location=Current) const
Definition: NcGroup.cpp:1122
Represents a netCDF opaque type.
Definition: NcOpaqueType.h:25
int GetAttCount(NcGroup::Location const location=Current) const
Definition: NcGroup.cpp:618
virtual void Rename(std::string const &)
Definition: NcGroup.h:639
Location
options for selecting groups.
Definition: NcGroup.h:51
NcGroup AddGroup(std::string const name) const
Definition: NcGroup.cpp:259
NcVar GetVar(std::string const name, NcGroup::Location location=Current) const
Definition: NcGroup.cpp:412
Select from set of parent groups (excludes the current group).
Definition: NcGroup.h:45
NcGroupMap GetGroups(NcGroup::GroupLocation location=ChildrenGrps) const
Definition: NcGroup.cpp:165
NcGroupMapUnique GetCoordVars(Location location=Current) const
Definition: NcGroup.cpp:1544
NcGroupAtt PutAtt(std::string const name, NcType const &type, size_t len, const unsigned char *dataValues) const
Definition: NcGroup.cpp:802
NcVar AddVar(std::string const name, std::string const typeName) const
Add a scalar variable of a specified type name.
Definition: NcGroup.cpp:479
NcDimMap GetDims(NcGroup::Location const location=Current) const
Definition: NcGroup.cpp:1157
bool HaveVariable(std::string const name, NcGroup::Location const location=Current) const
Definition: NcGroup.cpp:319
std::set< NcType > NcTypeSet
Definition: NcGroup.h:67
NcOpaqueType AddOpaqueType(std::string const name, size_t size) const
Definition: NcGroup.cpp:1524
Represents a netCDF variable.
Definition: NcVar.h:43
std::multimap< std::string, NcTypeUserDef > NcUserTypeMap
Definition: NcGroup.h:68
std::multimap< std::string, NcDim > NcDimMap
Definition: NcGroup.h:72
std::pair< std::string, NcGroup > NcGroupPair
Definition: NcGroup.h:63
Represents a netCDF compound type.
Definition: NcCompoundType.h:28
virtual ~NcGroup()
Definition: NcGroup.h:645
std::multimap< std::string, NcType > NcTypeMap
Definition: NcGroup.h:65
bool HaveAttribute(std::string const name, NcGroup::Location const location=Current) const
Definition: NcGroup.cpp:670
Select from set of all children of the current group and beneath.
Definition: NcGroup.h:47
Select from contents of children groups.
Definition: NcGroup.h:56
std::pair< std::string, NcType > NcTypePair
Definition: NcGroup.h:66
Select from the set of children in the current group.
Definition: NcGroup.h:44
Represents a netCDF group attribute.
Definition: NcGroupAtt.h:26
Select from set of all children of children in the current group.
Definition: NcGroup.h:46
Select from contents of current group.
Definition: NcGroup.h:54
NcCompoundType AddCompoundType(std::string const name, size_t size) const
Definition: NcGroup.cpp:1534
std::pair< std::string, NcVar > NcVarPair
Definition: NcGroup.h:70
std::set< NcGroup > NcGroupSet
Definition: NcGroup.h:64
NcEnumType AddEnumType(std::string const name, NcEnumType::ncEnumType basetype) const
Definition: NcGroup.cpp:1504
int GetGroupCount(NcGroup::GroupLocation location=ChildrenGrps) const
Definition: NcGroup.cpp:120
int GetVarCount(NcGroup::Location location=Current) const
Definition: NcGroup.cpp:277
NcDim AddDim(std::string const name, size_t const dimSize) const
Definition: NcGroup.cpp:1233
NcGroupAttMap GetAttributes(NcGroup::Location location=Current) const
Definition: NcGroup.cpp:711
NcGroup GetGroup(std::string const name, NcGroup::GroupLocation location=ChildrenGrps) const
Definition: NcGroup.cpp:230
NcGroup()
null group
Definition: NcGroup.cpp:56
Base class for NcAtt, NcVar, NcDim, NcGroup.
Definition: NcItem.h:22
Base class for all netCDF data types.
Definition: NcType.h:47
std::multimap< std::string, NcGroup > NcGroupMap
Definition: NcGroup.h:62
std::pair< std::string, NcGroupAtt > NcGroupAttPair
Definition: NcGroup.h:76
int GetTypeCount(NcGroup::Location location=Current) const
Definition: NcGroup.cpp:1267
GroupLocation
options for selecting groups (used for returned set of NcGroup objects)
Definition: NcGroup.h:41
NcTypeMap GetTypes(NcGroup::Location location=Current) const
Definition: NcGroup.cpp:1356
Represents a netCDF group.
Definition: NcGroup.h:36
std::multimap< std::string, NcGroupAtt > NcGroupAttMap
Definition: NcGroup.h:75
NcGroupAtt GetAtt(std::string const name, NcGroup::Location location=Current) const
Definition: NcGroup.cpp:768