A toolkit for distributed mathematical modeling
INMOST::TagManager Class Reference
Inheritance diagram for INMOST::TagManager:
Collaboration diagram for INMOST::TagManager:


struct  sparse_sub_record

Public Types

typedef tag_array_type::iterator iteratorTag

Public Member Functions

bool HaveTag (std::string name) const
 Check existence of a data tag by it's name.
Tag GetTag (std::string name) const
 Retrieve a data tag by it's name.
void ListTagNames (std::vector< std::string > &list) const
 Retrieve names for all the tags present on the mesh.
Tag CreateTag (Mesh *m, std::string name, DataType dtype, ElementType etype, ElementType sparse, INMOST_DATA_ENUM_TYPE size=ENUMUNDEF)
 Create tag with prescribed attributes.
virtual Tag DeleteTag (Tag tag, ElementType mask)
 Delete tag from certain elements.
bool ElementDefined (Tag const &tag, ElementType etype) const
 Check that the tag was defined on certain elements.
bool RenameTag (std::string oldname, std::string newname)
 Change tag name.

Protected Types

typedef chunk_array< INMOST_DATA_ENUM_TYPE, chunk_bits_empty > empty_data
typedef chunk_array< Tag, chunk_bits_tags > tag_array_type
typedef chunk_bulk_array< chunk_bits_elems > dense_sub_type
typedef chunk_array< dense_sub_type, chunk_bits_dense > dense_data_array_type
typedef array< sparse_sub_recordsparse_sub_type
typedef chunk_array< sparse_sub_type, chunk_bits_elems > sparse_data_array_type
typedef chunk_array< INMOST_DATA_INTEGER_TYPE, chunk_bits_elems > back_links_type
typedef tag_array_type::iterator tag_iterator
typedef tag_array_type::const_iterator tag_const_iterator

Protected Member Functions

 TagManager (const TagManager &other)
TagManageroperator= (TagManager const &other)
void ReallocateData (const Tag &t, INMOST_DATA_INTEGER_TYPE etypenum, INMOST_DATA_ENUM_TYPE new_size)
 Shrink or enlarge arrays for a dense data.
void ReallocateData (INMOST_DATA_INTEGER_TYPE etypenum, INMOST_DATA_ENUM_TYPE new_size)
 Reallocate all the data for all the tags.
__INLINE sparse_sub_type const & GetSparseData (int etypenum, int local_id) const
 Retrieve substructure for representation of the sparse data without permission for modification.
__INLINE sparse_sub_typeGetSparseData (int etypenum, int local_id)
 Retrieve substructure for representation of the sparse data.
__INLINE dense_sub_type const & GetDenseData (int pos) const
 Retrieve substructure for representation of the dense data without permission for modification.
__INLINE dense_sub_typeGetDenseData (int pos)
 Retrieve substructure for representation of the dense data.

Static Protected Member Functions

static void CopyData (const Tag &t, void *adata, const void *bdata)
 Copy data from one element to another.
static void DestroyVariableData (const Tag &t, void *adata)
 Destroy data that represents array of variable size.

Protected Attributes

tag_array_type tags
empty_data empty_dense_data
dense_data_array_type dense_data
sparse_data_array_type sparse_data [NUM_ELEMENT_TYPS]
back_links_type back_links [NUM_ELEMENT_TYPS]

Detailed Description

Definition at line 243 of file inmost_data.h.

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