MeshLink
Computational geometry access
|
Storage for MeshLink ElementLinkage data. More...
#include <MeshAssociativity.h>
Public Member Functions | |
MeshElementLinkage () | |
Default constructor. More... | |
MeshElementLinkage (std::string &name, std::string &sourceEntityRef, std::string &targetEntityRef, MeshAssociativity &meshAssoc) | |
virtual void | setAref (MLINT aref) |
Set the MeshLinkAttribute AttID referenced by this MeshElementLinkage. More... | |
bool | hasAref () const |
Whether the MeshElementLinkage has a MeshLinkAttribute AttID reference defined. More... | |
MLINT | getAref () const |
Get the MeshLinkAttribute AttID referenced by this MeshElementLinkage. More... | |
virtual bool | setXref (MLINT xref, MeshAssociativity &meshAssoc) |
Set the Transform XID referenced by this MeshElementLinkage. More... | |
bool | hasXref () const |
Whether the MeshElementLinkage has a Transform XID reference defined. More... | |
virtual bool | getXref (MLINT *xref) const |
Get the Transform XID referenced by this MeshElementLinkage. More... | |
const MeshLinkTransform * | getTransform (const MeshAssociativity &meshAssoc) const |
Get the Transform referenced by this MeshElementLinkage. More... | |
bool | isValid () const |
virtual void | getName (const char **name) const |
Return the name of this MeshElementLinkage. More... | |
virtual const std::string & | getName () const |
Return the name of this MeshElementLinkage. More... | |
void | setName (const std::string &name) |
Set the name of this MeshElementLinkage. More... | |
void | setName (const char *name) |
Set the name of this MeshElementLinkage. More... | |
std::string | getNextName () |
Generate and return a unique name for the entity. More... | |
void | getEntityRefs (std::string &sourceEntityRef, std::string &targetEntityRef) const |
Return the Entity references linked by this MeshElementLinkage. More... | |
virtual const std::string & | getBaseName () const |
Return the base name used for generating unique names for linkages. More... | |
virtual MLUINT & | getNameCounter () |
Return the current value used for generating unique names for linkages. More... | |
Private Attributes | |
std::string | name_ |
The name of this linkage. More... | |
MLINT | aref_ |
The attribute reference ID (AttID) More... | |
MLINT | xref_ |
The transform reference ID (XID) More... | |
std::string | sourceEntityRef_ |
The source entity reference. More... | |
std::string | targetEntityRef_ |
The target entity reference. More... | |
bool | is_valid_ |
Whether this linkage is valid. More... | |
Static Private Attributes | |
static MLUINT | nameCounter_ |
The unique name counter for linkages. More... | |
Friends | |
class | MeshAssociativity |
Storage for MeshLink ElementLinkage data.
A MeshElementLinkage provides a mapping of one referenced mesh element (sheet, face, string, edge or vertex) to another, with an optional transform (to identify slaved periodic transformations, for example).
sourceEntityRef and targetEntityRef attributes are defined in an application-specific manner; for example, mesh element reference IDs or mesh element names.
Definition at line 179 of file MeshAssociativity.h.
MeshElementLinkage::MeshElementLinkage | ( | ) |
Default constructor.
MeshElementLinkage::MeshElementLinkage | ( | std::string & | name, |
std::string & | sourceEntityRef, | ||
std::string & | targetEntityRef, | ||
MeshAssociativity & | meshAssoc | ||
) |
Constructor for an transform with a unique transform ID (AttID) and name. The transform's definition is given by its contents.
MLINT MeshElementLinkage::getAref | ( | ) | const |
Get the MeshLinkAttribute AttID referenced by this MeshElementLinkage.
|
virtual |
Return the base name used for generating unique names for linkages.
void MeshElementLinkage::getEntityRefs | ( | std::string & | sourceEntityRef, |
std::string & | targetEntityRef | ||
) | const |
Return the Entity references linked by this MeshElementLinkage.
[out] | sourceEntityRef | reference to the source entity |
[out] | targetEntityRef | reference to the target entity |
|
virtual |
Return the name of this MeshElementLinkage.
N.B. return value subject to change
[out] | name | the non-modifiable name of the entity |
|
virtual |
Return the name of this MeshElementLinkage.
|
virtual |
Return the current value used for generating unique names for linkages.
std::string MeshElementLinkage::getNextName | ( | ) |
Generate and return a unique name for the entity.
const MeshLinkTransform* MeshElementLinkage::getTransform | ( | const MeshAssociativity & | meshAssoc | ) | const |
Get the Transform referenced by this MeshElementLinkage.
returns NULL if XREF is unset or invalid
|
virtual |
Get the Transform XID referenced by this MeshElementLinkage.
[out] | xref | the transform reference ID (XID) for this linkage |
bool MeshElementLinkage::hasAref | ( | ) | const |
Whether the MeshElementLinkage has a MeshLinkAttribute AttID reference defined.
bool MeshElementLinkage::hasXref | ( | ) | const |
Whether the MeshElementLinkage has a Transform XID reference defined.
|
inline |
Whether this linkage is valid. A linkage may be invalid if the sourceEntityRef or targetEntityRef are unknown.
Definition at line 224 of file MeshAssociativity.h.
|
virtual |
Set the MeshLinkAttribute AttID referenced by this MeshElementLinkage.
aref | the attribute reference ID (AttID) for this linkage |
void MeshElementLinkage::setName | ( | const std::string & | name | ) |
Set the name of this MeshElementLinkage.
setName is special and should not be overridden, as it provides a mechanism for generating unique names
name | the name of the mesh entity, or empty if a unique name is to be generated |
void MeshElementLinkage::setName | ( | const char * | name | ) |
Set the name of this MeshElementLinkage.
setName is special and should not be overrided it provides a mechanism for generating unique names
name | the name of the mesh entity, or null if a unique name is to be generated |
|
virtual |
Set the Transform XID referenced by this MeshElementLinkage.
xref | the transform reference ID (XID) for this linkage |
|
friend |
Definition at line 181 of file MeshAssociativity.h.
|
private |
The attribute reference ID (AttID)
Definition at line 273 of file MeshAssociativity.h.
|
private |
Whether this linkage is valid.
Definition at line 281 of file MeshAssociativity.h.
|
private |
The name of this linkage.
Definition at line 271 of file MeshAssociativity.h.
|
staticprivate |
The unique name counter for linkages.
Definition at line 268 of file MeshAssociativity.h.
|
private |
The source entity reference.
Definition at line 277 of file MeshAssociativity.h.
|
private |
The target entity reference.
Definition at line 279 of file MeshAssociativity.h.
|
private |
The transform reference ID (XID)
Definition at line 275 of file MeshAssociativity.h.