INMOST
A toolkit for distributed mathematical modeling
|
Base class for Mesh, Element, and ElementSet classes. More...
#include <inmost_data.h>
Classes | |
class | reference_array |
Storage type for representing arrays of Element references. More... | |
class | remote_reference_array |
Storage type for representing arrays of Element references on another Mesh. More... | |
Public Types | |
typedef INMOST_DATA_REAL_TYPE | real |
Storage type for representing real values. | |
typedef INMOST_DATA_INTEGER_TYPE | integer |
Storage type for representing integer values. | |
typedef INMOST_DATA_BULK_TYPE | bulk |
Storage type for representing one byte of abstract data. | |
typedef INMOST_DATA_ENUM_TYPE | enumerator |
type for representing unsigned integer values. | |
typedef HandleType | reference |
Storage type for representing references to Element. | |
typedef RemoteHandleType | remote_reference |
Storage type for representing references to Element in another Mesh. | |
typedef shell< real > | real_array |
Storage type for representing arrays of real values. | |
typedef shell< integer > | integer_array |
Storage type for representing arrays of integer values. | |
typedef shell< bulk > | bulk_array |
Storage type for representing abstract data as a series of bytes. | |
typedef variable | var |
Storage type for representing real value with vector of variations. | |
typedef shell< variable > | var_array |
Storage type for representing array of values with vectors of variations. | |
Public Member Functions | |
Storage (const Storage &other) | |
Storage (Mesh *mesh, HandleType handle) | |
Storage (Mesh *mesh, HandleType *handle) | |
This constructor allows for remote handle modification. | |
Storage & | operator= (Storage const &other) |
If there is a link to handle provided (automatically by ElementArray and reference_array), then remote handle value will be modified. | |
__INLINE bool | operator< (const Storage &other) const |
__INLINE bool | operator> (const Storage &other) const |
__INLINE bool | operator<= (const Storage &other) const |
__INLINE bool | operator>= (const Storage &other) const |
__INLINE bool | operator== (const Storage &other) const |
__INLINE bool | operator!= (const Storage &other) const |
__INLINE Storage * | operator-> () |
__INLINE const Storage * | operator-> () const |
__INLINE Storage & | self () |
__INLINE const Storage & | self () const |
__INLINE real & | Real (const Tag &tag) const |
Retrieve real value associated with Tag. More... | |
__INLINE integer & | Integer (const Tag &tag) const |
Retrieve integer value associated with Tag. More... | |
__INLINE bulk & | Bulk (const Tag &tag) const |
Retrieve one byte of abstract data associated with Tag. More... | |
__INLINE reference & | Reference (const Tag &tag) const |
Retrieve Element reference associated with Tag. More... | |
__INLINE remote_reference & | RemoteReference (const Tag &tag) const |
Retrieve remote Element reference associated with Tag. More... | |
__INLINE real_array | RealArray (const Tag &tag) const |
Retrieve array of real values associated with Tag. More... | |
__INLINE integer_array | IntegerArray (const Tag &tag) const |
Retrieve array of integer values associated with Tag. More... | |
__INLINE bulk_array | BulkArray (const Tag &tag) const |
Retrieve abstract data associated with Tag as a series of bytes. More... | |
__INLINE reference_array | ReferenceArray (const Tag &tag) const |
Retrieve array of Element references associated with Tag. More... | |
__INLINE remote_reference_array | RemoteReferenceArray (const Tag &tag) const |
Retrieve array of Element references associated with Tag. More... | |
__INLINE real_array | RealArrayDF (const Tag &tag) const |
__INLINE integer_array | IntegerArrayDF (const Tag &tag) const |
__INLINE bulk_array | BulkArrayDF (const Tag &tag) const |
__INLINE reference_array | ReferenceArrayDF (const Tag &tag) const |
__INLINE remote_reference_array | RemoteReferenceArrayDF (const Tag &tag) const |
__INLINE real & | RealDF (const Tag &tag) const |
__INLINE integer & | IntegerDF (const Tag &tag) const |
__INLINE bulk & | BulkDF (const Tag &tag) const |
__INLINE reference & | ReferenceDF (const Tag &tag) const |
__INLINE remote_reference & | RemoteReferenceDF (const Tag &tag) const |
__INLINE real_array | RealArrayDV (const Tag &tag) const |
__INLINE integer_array | IntegerArrayDV (const Tag &tag) const |
__INLINE bulk_array | BulkArrayDV (const Tag &tag) const |
__INLINE reference_array | ReferenceArrayDV (const Tag &tag) const |
__INLINE remote_reference_array | RemoteReferenceArrayDV (const Tag &tag) const |
__INLINE real & | RealDV (const Tag &tag) const |
__INLINE integer & | IntegerDV (const Tag &tag) const |
__INLINE bulk & | BulkDV (const Tag &tag) const |
__INLINE reference & | ReferenceDV (const Tag &tag) const |
__INLINE remote_reference & | RemoteReferenceDV (const Tag &tag) const |
__INLINE var & | Variable (const Tag &tag) const |
Retrieve variable reference associated with Tag. | |
__INLINE var & | VariableDF (const Tag &tag) const |
__INLINE var & | VariableDV (const Tag &tag) const |
__INLINE var_array | VariableArray (const Tag &tag) const |
Retrieve array of variables associated with Tag. | |
__INLINE var_array | VariableArrayDF (const Tag &tag) const |
__INLINE var_array | VariableArrayDV (const Tag &tag) const |
__INLINE INMOST_DATA_ENUM_TYPE | GetDataSize (const Tag &tag) const |
Return the data length associated with Tag. More... | |
__INLINE INMOST_DATA_ENUM_TYPE | GetDataCapacity (const Tag &tag) const |
Return the size of the structure required to represent the data on current element. More... | |
__INLINE void | SetDataSize (const Tag &tag, INMOST_DATA_ENUM_TYPE new_size) const |
Set the length of data associated with Tag. More... | |
__INLINE void | GetData (const Tag &tag, INMOST_DATA_ENUM_TYPE shift, INMOST_DATA_ENUM_TYPE size, void *data) const |
Extract part of the data associated with Tag. More... | |
__INLINE void | SetData (const Tag &tag, INMOST_DATA_ENUM_TYPE shift, INMOST_DATA_ENUM_TYPE size, const void *data) const |
__INLINE void | DelData (const Tag &tag) const |
__INLINE bool | DelSparseData (const Tag &tag) const |
Deallocates space allocated for sparse data, frees variable array if necessary. | |
__INLINE void | DelDenseData (const Tag &tag) const |
Frees variable array or fills field with zeroes. | |
__INLINE bool | HaveData (const Tag &tag) const |
Check if any data is associated with Tag. | |
__INLINE ElementType | GetElementType () const |
__INLINE integer | GetElementNum () const |
__INLINE void | SetMarker (MarkerType n) const |
__INLINE bool | GetMarker (MarkerType n) const |
__INLINE void | RemMarker (MarkerType n) const |
__INLINE void | SetPrivateMarker (MarkerType n) const |
__INLINE bool | GetPrivateMarker (MarkerType n) const |
__INLINE void | RemPrivateMarker (MarkerType n) const |
__INLINE void | ClearMarkerSpace () const |
__INLINE void | GetMarkerSpace (bulk copy[MarkerFields]) const |
__INLINE void | SetMarkerSpace (bulk source[MarkerFields]) const |
__INLINE integer | LocalID () const |
__INLINE integer | DataLocalID () const |
This number is guaranteed to be between 0 and Mesh::NumberOf(type of element) after Mesh::ReorderEmpty. | |
__INLINE bool | isValid () const |
__INLINE Mesh * | GetMeshLink () const |
__INLINE HandleType | GetHandle () const |
__INLINE Element | getAsElement () const |
__INLINE Node | getAsNode () const |
__INLINE Edge | getAsEdge () const |
__INLINE Face | getAsFace () const |
__INLINE Cell | getAsCell () const |
__INLINE ElementSet | getAsSet () const |
Protected Attributes | |
HandleType | handle |
HandleType * | handle_link |
Friends | |
class | Mesh |
Base class for Mesh, Element, and ElementSet classes.
This base class is used for the Mesh class, as well as Element classes, and ElementSet class.
Storage class is used for representing different data objects in memory. Each data object is associated with corresponding Tag.
Definition at line 309 of file inmost_data.h.
__INLINE Storage::bulk & INMOST::Storage::Bulk | ( | const Tag & | tag | ) | const |
Retrieve one byte of abstract data associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3737 of file inmost_mesh.h.
__INLINE Storage::bulk_array INMOST::Storage::BulkArray | ( | const Tag & | tag | ) | const |
Retrieve abstract data associated with Tag as a series of bytes.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3757 of file inmost_mesh.h.
__INLINE void INMOST::Storage::GetData | ( | const Tag & | tag, |
INMOST_DATA_ENUM_TYPE | shift, | ||
INMOST_DATA_ENUM_TYPE | size, | ||
void * | data | ||
) | const |
Extract part of the data associated with Tag.
Copy part of the associated array or data to the destination memory.
tag | Identifying Tag. |
shift | Starting position of the copied data. For abstract data - number of bytes to skip, otherwise number of values to skip. |
size | Number of elements to copy. For abstract data - number of bytes to copy, otherwise number of values to copy. |
data | Destination position to copy data to. |
Definition at line 3953 of file inmost_mesh.h.
__INLINE INMOST_DATA_ENUM_TYPE INMOST::Storage::GetDataCapacity | ( | const Tag & | tag | ) | const |
Return the size of the structure required to represent the data on current element.
This is equal to GetDataSize times Tag::GetBytesSize for all the data types, except for DATA_VARIABLE, that requires a larger structure to accommodate derivatives.
tag | tag that represents the data |
Definition at line 3937 of file inmost_mesh.h.
__INLINE INMOST_DATA_ENUM_TYPE INMOST::Storage::GetDataSize | ( | const Tag & | tag | ) | const |
Return the data length associated with Tag.
For abstract data return the number of bytes, otherwise return the length of associated array.
tag | tag that represents the data |
Definition at line 3933 of file inmost_mesh.h.
__INLINE Storage::integer & INMOST::Storage::Integer | ( | const Tag & | tag | ) | const |
Retrieve integer value associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3733 of file inmost_mesh.h.
__INLINE Storage::integer_array INMOST::Storage::IntegerArray | ( | const Tag & | tag | ) | const |
Retrieve array of integer values associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3753 of file inmost_mesh.h.
__INLINE Storage::real & INMOST::Storage::Real | ( | const Tag & | tag | ) | const |
Retrieve real value associated with Tag.
Inline functions for class Storage //.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3729 of file inmost_mesh.h.
__INLINE Storage::real_array INMOST::Storage::RealArray | ( | const Tag & | tag | ) | const |
Retrieve array of real values associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3749 of file inmost_mesh.h.
__INLINE Storage::reference & INMOST::Storage::Reference | ( | const Tag & | tag | ) | const |
Retrieve Element reference associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3741 of file inmost_mesh.h.
__INLINE Storage::reference_array INMOST::Storage::ReferenceArray | ( | const Tag & | tag | ) | const |
Retrieve array of Element references associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3761 of file inmost_mesh.h.
__INLINE Storage::remote_reference & INMOST::Storage::RemoteReference | ( | const Tag & | tag | ) | const |
Retrieve remote Element reference associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3745 of file inmost_mesh.h.
__INLINE Storage::remote_reference_array INMOST::Storage::RemoteReferenceArray | ( | const Tag & | tag | ) | const |
Retrieve array of Element references associated with Tag.
Implemented in inmost_mesh.h.
tag | instance of class Tag that represent asking datum. |
Definition at line 3765 of file inmost_mesh.h.
__INLINE void INMOST::Storage::SetDataSize | ( | const Tag & | tag, |
INMOST_DATA_ENUM_TYPE | new_size | ||
) | const |
Set the length of data associated with Tag.
tag | Identifying Tag. |
new_size | The number of bytes for abstract data, otherwise the length of the array. |
Definition at line 3941 of file inmost_mesh.h.