Utility class to manage tag handles for corner tags. More...
#include <CornerTag.hpp>
Public Member Functions | |
CornerTagHandles (const char *tag_name, Mesh::TagType type, unsigned tag_len) | |
TagHandle | get_handle (Mesh *mesh, unsigned num_corners, MsqError &err) |
Get the tag handle for storing this tag type with the specified number of values (corners). More... | |
void | save_load_tags (bool load, PatchData *pd, size_t elem_index, void *data, size_t tag_byes, MsqError &err) |
CornerTagHandles (const char *tag_name, Mesh::TagType type, unsigned tag_len) | |
TagHandle | get_handle (Mesh *mesh, unsigned num_corners, MsqError &err) |
Get the tag handle for storing this tag type with the specified number of values (corners). More... | |
void | save_load_tags (bool load, PatchData *pd, size_t elem_index, void *data, size_t tag_byes, MsqError &err) |
Static Public Member Functions | |
static Mesh * | get_current_mesh (PatchData *pd) |
static size_t | size (Mesh::TagType type) |
static int | num_corners (PatchData *pd, int elem_index) |
static Mesh * | get_current_mesh (PatchData *pd) |
static size_t | size (Mesh::TagType type) |
static int | num_corners (PatchData *pd, int elem_index) |
Private Attributes | |
const msq_std::string | tagName |
const Mesh::TagType | tagType |
const unsigned | tagLen |
msq_std::vector< TagHandle > | cornerHandles |
Utility class to manage tag handles for corner tags.
Tags on corners are saved as an array of values on the corresponding element. As tags must be of a constant size, this necessitates using different tags for elements with different numbers of corners. This class manages the set of all tag handles for a given corner tag, where the specific tag handle can be retrieved by specifying the number of corners in the element.
Definition at line 54 of file includeLinks/CornerTag.hpp.
|
inline |
Definition at line 57 of file includeLinks/CornerTag.hpp.
|
inline |
Definition at line 57 of file src/Mesh/CornerTag.hpp.
Definition at line 50 of file Mesh/CornerTag.cpp.
References MeshSet::get_current_mesh(), and PatchData::get_mesh_set().
Referenced by CornerTagHandles::save_load_tags().
Get the tag handle for storing this tag type with the specified number of values (corners).
Definition at line 55 of file Mesh/CornerTag.cpp.
References CornerTagHandles::cornerHandles, MsqError::INVALID_ARG, MSQ_ERRZERO, MSQ_SETERR, CornerTagHandles::size(), Mesh::tag_create(), Mesh::tag_get(), Mesh::tag_properties(), CornerTagHandles::tagLen, CornerTagHandles::tagName, and CornerTagHandles::tagType.
Referenced by CornerTagHandles::save_load_tags().
Get the tag handle for storing this tag type with the specified number of values (corners).
|
static |
Definition at line 44 of file Mesh/CornerTag.cpp.
References PatchData::element_by_index(), and MsqMeshEntity::vertex_count().
Referenced by CornerTagHandles::save_load_tags().
|
static |
void save_load_tags | ( | bool | load, |
PatchData * | pd, | ||
size_t | elem_index, | ||
void * | data, | ||
size_t | tag_byes, | ||
MsqError & | err | ||
) |
Definition at line 98 of file Mesh/CornerTag.cpp.
References CornerTagHandles::get_current_mesh(), PatchData::get_element_array(), PatchData::get_element_handles_array(), CornerTagHandles::get_handle(), MSQ_CHKERR, MSQ_ERRRTN, CornerTagHandles::num_corners(), Mesh::tag_get_element_data(), Mesh::tag_set_element_data(), and MsqMeshEntity::vertex_count().
void save_load_tags | ( | bool | load, |
PatchData * | pd, | ||
size_t | elem_index, | ||
void * | data, | ||
size_t | tag_byes, | ||
MsqError & | err | ||
) |
|
static |
|
static |
Definition at line 32 of file Mesh/CornerTag.cpp.
References Mesh::BOOL, Mesh::BYTE, Mesh::DOUBLE, Mesh::HANDLE, and Mesh::INT.
Referenced by CornerTag< T >::CornerTag(), and CornerTagHandles::get_handle().
|
private |
Definition at line 84 of file includeLinks/CornerTag.hpp.
Referenced by CornerTagHandles::get_handle().
|
private |
Definition at line 82 of file includeLinks/CornerTag.hpp.
Referenced by CornerTagHandles::get_handle().
|
private |
Definition at line 80 of file includeLinks/CornerTag.hpp.
Referenced by CornerTagHandles::get_handle().
|
private |
Definition at line 81 of file includeLinks/CornerTag.hpp.
Referenced by CornerTagHandles::get_handle().