MeshLink
Computational geometry access
GeometryGroup Class Reference

Storage for geometry association by entity reference. More...

#include <GeometryGroup.h>

Public Member Functions

 GeometryGroup ()
 Default constructor. More...
 
 ~GeometryGroup ()
 Destructor. More...
 
void setName (const char *name)
 Set the name of the GeometryGroup. More...
 
const std::string & getName () const
 Get the name of this GeometryGroup. More...
 
void setID (MLINT id)
 Set the ID of this GeometryGroup. More...
 
MLINT getID () const
 Get the ID of this GeometryGroup. More...
 
void setGroupID (MLINT id)
 Set the ID of the group containing this group. More...
 
bool getGroupID (MLINT &id)
 Get the ID of the group containing this group. More...
 
void addGID (MLINT gid)
 Add GeometryGroup that is part of this group. More...
 
const std::vector< MLINT > & getGIDs ()
 Return the GeometryGroup IDs that make up this group. More...
 
void setAref (MLINT aref)
 Set the MeshLinkAttribute AttID referenced by the GeometryGroup. More...
 
MLINT getAref () const
 Get the MeshLinkAttribute AttID referenced by the GeometryGroup. More...
 
void addEntityName (const char *name)
 Add a geometry entity's name to the GeometryGroup. More...
 
void setEntityNames (const std::set< std::string > &names)
 Set the GeometryGroup's geometry entity list. More...
 
const std::set< std::string > & getEntityNameSet () const
 Get a set of geometry entity names referenced by the GeometryGroup. More...
 
const std::vector< std::string > getEntityNames () const
 Get a list of geometry entity names referenced by the GeometryGroup. More...
 
bool hasAref () const
 Whether the GeometryGroup has a MeshLinkAttribute AttID reference defined. More...
 
bool getArefID (MLINT *aref) const
 Return the MeshLinkAttribute AttID referenced by the GeometryGroup. More...
 
std::vector< MLINTget_refAttIDs (const MeshAssociativity &meshAssoc) const
 Return list of MeshLinkAttribute AttIDs referenced by the GeometryGroup. More...
 

Private Attributes

std::string name_
 Group name. More...
 
MLINT gid_
 Group unique ID. More...
 
MLINT aref_
 Group attribute ID. More...
 
MLINT groupID_
 Group ID of containing group. More...
 
std::vector< MLINTgroupIDs_
 IDs of contained geometry groups. More...
 
std::set< std::string > entity_names_
 Names of contained geometry entities. More...
 

Detailed Description

Storage for geometry association by entity reference.

Mesh entities reference geometry through a GREF attribute which is the integer ID of the geometry group associated with the mesh entity.

Definition at line 38 of file GeometryGroup.h.

Constructor & Destructor Documentation

◆ GeometryGroup()

GeometryGroup::GeometryGroup ( )

Default constructor.

◆ ~GeometryGroup()

GeometryGroup::~GeometryGroup ( )
inline

Destructor.

Definition at line 43 of file GeometryGroup.h.

Member Function Documentation

◆ addEntityName()

void GeometryGroup::addEntityName ( const char *  name)

Add a geometry entity's name to the GeometryGroup.

Parameters
[in]namethe name of the geometry entity to add to this group

◆ addGID()

void GeometryGroup::addGID ( MLINT  gid)

Add GeometryGroup that is part of this group.

Parameters
[in]gidthe ID of the group to add to this group

◆ get_refAttIDs()

std::vector<MLINT> GeometryGroup::get_refAttIDs ( const MeshAssociativity meshAssoc) const

Return list of MeshLinkAttribute AttIDs referenced by the GeometryGroup.

N.B. This method will expand the GeometryGroup's AREF into a list of associated AttIDs.

Parameters
[in]meshAssocthe MeshAssociativity to query for attributes
Returns
list of unique attribute IDs (AttID) that are associated with this group

◆ getAref()

MLINT GeometryGroup::getAref ( ) const

Get the MeshLinkAttribute AttID referenced by the GeometryGroup.

◆ getArefID()

bool GeometryGroup::getArefID ( MLINT aref) const

Return the MeshLinkAttribute AttID referenced by the GeometryGroup.

N.B. This method returns the GeometryGroup's AREF only. The AREF could refer to a group of AttIDs.

Parameters
[out]arefthe unique id (AttID) of the associated MeshLinkAttribute
Returns
true if an attribute has been assigned to this group

◆ getEntityNames()

const std::vector<std::string> GeometryGroup::getEntityNames ( ) const

Get a list of geometry entity names referenced by the GeometryGroup.

◆ getEntityNameSet()

const std::set<std::string>& GeometryGroup::getEntityNameSet ( ) const

Get a set of geometry entity names referenced by the GeometryGroup.

◆ getGIDs()

const std::vector<MLINT>& GeometryGroup::getGIDs ( )

Return the GeometryGroup IDs that make up this group.

◆ getGroupID()

bool GeometryGroup::getGroupID ( MLINT id)

Get the ID of the group containing this group.

Parameters
[out]idthe unique ID of this group
Returns
true if the group is contained in another group

◆ getID()

MLINT GeometryGroup::getID ( ) const

Get the ID of this GeometryGroup.

◆ getName()

const std::string& GeometryGroup::getName ( ) const

Get the name of this GeometryGroup.

◆ hasAref()

bool GeometryGroup::hasAref ( ) const

Whether the GeometryGroup has a MeshLinkAttribute AttID reference defined.

◆ setAref()

void GeometryGroup::setAref ( MLINT  aref)

Set the MeshLinkAttribute AttID referenced by the GeometryGroup.

Parameters
[in]arefthe unique attribute ID (AttID) to set

◆ setEntityNames()

void GeometryGroup::setEntityNames ( const std::set< std::string > &  names)

Set the GeometryGroup's geometry entity list.

Parameters
[in]namesthe list of names to add to this group

◆ setGroupID()

void GeometryGroup::setGroupID ( MLINT  id)

Set the ID of the group containing this group.

◆ setID()

void GeometryGroup::setID ( MLINT  id)

Set the ID of this GeometryGroup.

Parameters
[in]idthe unique ID of the group

◆ setName()

void GeometryGroup::setName ( const char *  name)

Set the name of the GeometryGroup.

Parameters
[in]namethe new name of this group

Member Data Documentation

◆ aref_

MLINT GeometryGroup::aref_
private

Group attribute ID.

Definition at line 129 of file GeometryGroup.h.

◆ entity_names_

std::set<std::string> GeometryGroup::entity_names_
private

Names of contained geometry entities.

Definition at line 137 of file GeometryGroup.h.

◆ gid_

MLINT GeometryGroup::gid_
private

Group unique ID.

Definition at line 127 of file GeometryGroup.h.

◆ groupID_

MLINT GeometryGroup::groupID_
private

Group ID of containing group.

Definition at line 131 of file GeometryGroup.h.

◆ groupIDs_

std::vector<MLINT> GeometryGroup::groupIDs_
private

IDs of contained geometry groups.

Definition at line 133 of file GeometryGroup.h.

◆ name_

std::string GeometryGroup::name_
private

Group name.

Definition at line 125 of file GeometryGroup.h.


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