IOSS 2.0

Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
Ioss::Field Class Reference

Holds metadata for bulk data associated with a GroupingEntity. More...

`#include <Ioss_Field.h>`

Collaboration diagram for Ioss::Field:
[legend]

## Public Types
enum | BasicType { INVALID = -1, REAL = 1, DOUBLE = 1, INTEGER = 4, INT32 = 4, INT64 = 8, COMPLEX, STRING, CHARACTER }
| The basic data type held in the field. More...
enum | RoleType { INTERNAL, MESH, ATTRIBUTE, COMMUNICATION, INFORMATION, REDUCTION, TRANSIENT }

## Public Member Functions
| Field ()
| Create an empty field. More...
| Field (std::string name, BasicType type, const std::string &storage, RoleType role, size_t value_count, size_t index=0)
| Create a field. More...
| Field (std::string name, BasicType type, const std::string &storage, int copies, RoleType role, size_t value_count, size_t index=0)
| Create a field. More...
| Field (std::string name, BasicType type, const VariableType *storage, RoleType role, size_t value_count, size_t index=0)
| Create a field. More...
| Field (const Field &)
Field & | operator= (const Field &)
bool | operator< (const Field &other) const
| ~Field ()
bool | is_valid () const
bool | is_invalid () const
const std::string & | get_name () const
BasicType | get_type () const
| Get the basic data type of the data held in the field. More...
const VariableType * | raw_storage () const
const VariableType * | transformed_storage () const
size_t | raw_count () const
size_t | transformed_count () const
size_t | get_size () const
RoleType | get_role () const
| Get the role (MESH, ATTRIBUTE, TRANSIENT, REDUCTION, etc.) of the data in the field. More...
size_t | get_index () const
void | set_index (size_t index) const
void | reset_count (size_t new_count)
void | reset_type (BasicType new_type)
size_t | verify (size_t data_size) const
void | check_type (BasicType the_type) const
bool | is_type (BasicType the_type) const
bool | add_transform (Transform *my_transform)
bool | transform (void *data)
bool | has_transform () const

## Static Public Member Functions
static Ioss::Field::BasicType | get_field_type (char)
static Ioss::Field::BasicType | get_field_type (double)
static Ioss::Field::BasicType | get_field_type (int)
static Ioss::Field::BasicType | get_field_type (unsigned int)
static Ioss::Field::BasicType | get_field_type (int64_t)
static Ioss::Field::BasicType | get_field_type (uint64_t)
static Ioss::Field::BasicType | get_field_type (Complex)
static Ioss::Field::BasicType | get_field_type (std::string)

## Private Attributes
std::string | name_
size_t | rawCount_ {}
size_t | transCount_ {}
size_t | size_ {}
size_t | index_ {}
BasicType | type_ {INVALID}
RoleType | role_ {INTERNAL}
const VariableType * | rawStorage_ {}
const VariableType * | transStorage_ {}
std::vector< Transform * > | transforms_

## Detailed Description

Holds metadata for bulk data associated with a GroupingEntity.

## Member Enumeration Documentation

## ◆ BasicType

enum Ioss::Field::BasicType

The basic data type held in the field.

Enumerator
INVALID |
REAL |
DOUBLE |
INTEGER |
INT32 |
INT64 |
COMPLEX |
STRING |
CHARACTER |

## ◆ RoleType

enum Ioss::Field::RoleType

Enumerator
INTERNAL |
MESH | A field which is used to define the basic geometry or topology of the model and is not normally transient in nature. Examples would be element connectivity or nodal coordinates.
ATTRIBUTE | A field which is used to define an attribute on an EntityBlock derived class. Examples would be thickness of the elements in a shell element block or the radius of particles in a particle element block.
COMMUNICATION |
INFORMATION |
REDUCTION | A field which typically summarizes some transient data about an entity. The size of this field is typically not proportional to the number of entities in a GroupingEntity. An example would be average displacement over a group of nodes or the kinetic energy of a model. This data is also transient.
TRANSIENT | A field which is typically calculated at multiple steps or times in an analysis. These are typically "results" data. Examples would be nodal displacement or element stress.

## Constructor & Destructor Documentation

## ◆ Field() [1/5]

Ioss::Field::Field | ( |  | ) |

Create an empty field.

## ◆ Field() [2/5]

Ioss::Field::Field | ( | std::string | name,
|  | BasicType | type,
|  | const std::string & | storage,
|  | RoleType | role,
|  | size_t | value_count,
|  | size_t | index = `0`
| ) |  |

Create a field.

Parameters

  [in] | name | The name of the field
  [in] | type | The basic data type of data held in the field.
  [in] | storage | The storage class of the data (ConstructedVariableType, CompositeVariableType, etc)
  [in] | role | The category of information held in the field (MESH, ATTRIBUTE, TRANSIENT, REDUCTION, etc)
  [in] | value_count | The number of items in the field.
  [in] | index |

## ◆ Field() [3/5]

Ioss::Field::Field | ( | std::string | name,
|  | BasicType | type,
|  | const std::string & | storage,
|  | int | copies,
|  | RoleType | role,
|  | size_t | value_count,
|  | size_t | index = `0`
| ) |  |

Create a field.

Parameters

  [in] | name | The name of the field
  [in] | type | The basic data type of data held in the field.
  [in] | storage | The storage class of the data (ConstructedVariableType, CompositeVariableType, etc)
  [in] | copies | The number of variables to be combined in a CompositeVariableType field.
  [in] | role | The category of information held in the field (MESH, ATTRIBUTE, TRANSIENT, REDUCTION, etc)
  [in] | value_count | The number of items in the field.
  [in] | index |

## ◆ Field() [4/5]

Ioss::Field::Field | ( | std::string | name,
|  | BasicType | type,
|  | const VariableType * | storage,
|  | RoleType | role,
|  | size_t | value_count,
|  | size_t | index = `0`
| ) |  |

Create a field.

Parameters

  [in] | name | The name of the field
  [in] | type | The basic data type of data held in the field.
  [in] | storage | The storage class of the data (ConstructedVariableType, CompositeVariableType, etc)
  [in] | role | The category of information held in the field (MESH, ATTRIBUTE, TRANSIENT, REDUCTION, etc)
  [in] | value_count | The number of items in the field.
  [in] | index |

## ◆ Field() [5/5]

Ioss::Field::Field | ( | const Field & |  | ) |
| default

## ◆ ~Field()

Ioss::Field::~Field | ( |  | ) |
| default

## Member Function Documentation

## ◆ add_transform()

bool Ioss::Field::add_transform | ( | Transform * | my_transform | ) |

## ◆ check_type()

void Ioss::Field::check_type | ( | BasicType | the_type | ) | const

## ◆ get_field_type() [1/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | char |  | ) |
| inline static

## ◆ get_field_type() [2/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | double |  | ) |
| inline static

## ◆ get_field_type() [3/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | int |  | ) |
| inline static

## ◆ get_field_type() [4/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | unsigned int |  | ) |
| inline static

## ◆ get_field_type() [5/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | int64_t |  | ) |
| inline static

## ◆ get_field_type() [6/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | uint64_t |  | ) |
| inline static

## ◆ get_field_type() [7/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | Complex |  | ) |
| inline static

## ◆ get_field_type() [8/8]

static Ioss::Field::BasicType Ioss::Field::get_field_type | ( | std::string |  | ) |
| inline static

## ◆ get_index()

size_t Ioss::Field::get_index | ( |  | ) | const
| inline

## ◆ get_name()

const std::string& Ioss::Field::get_name | ( |  | ) | const
| inline

## ◆ get_role()

RoleType Ioss::Field::get_role | ( |  | ) | const
| inline

Get the role (MESH, ATTRIBUTE, TRANSIENT, REDUCTION, etc.) of the data in the field.

Returns
  The RoleType of the data in the field.

## ◆ get_size()

size_t Ioss::Field::get_size | ( |  | ) | const

## ◆ get_type()

BasicType Ioss::Field::get_type | ( |  | ) | const
| inline

Get the basic data type of the data held in the field.

Returns
  the basic data type of the data held in the field.

## ◆ has_transform()

bool Ioss::Field::has_transform | ( |  | ) | const
| inline

## ◆ is_invalid()

bool Ioss::Field::is_invalid | ( |  | ) | const
| inline

## ◆ is_type()

bool Ioss::Field::is_type | ( | BasicType | the_type | ) | const
| inline

## ◆ is_valid()

bool Ioss::Field::is_valid | ( |  | ) | const
| inline

## ◆ operator<()

bool Ioss::Field::operator< | ( | const Field & | other | ) | const

## ◆ operator=()

Ioss::Field & Ioss::Field::operator= | ( | const Field & |  | ) |
| default

## ◆ raw_count()

size_t Ioss::Field::raw_count | ( |  | ) | const
| inline

## ◆ raw_storage()

const VariableType* Ioss::Field::raw_storage | ( |  | ) | const
| inline

## ◆ reset_count()

void Ioss::Field::reset_count | ( | size_t | new_count | ) |

## ◆ reset_type()

void Ioss::Field::reset_type | ( | BasicType | new_type | ) |

## ◆ set_index()

void Ioss::Field::set_index | ( | size_t | index | ) | const
| inline

## ◆ transform()

bool Ioss::Field::transform | ( | void * | data | ) |

## ◆ transformed_count()

size_t Ioss::Field::transformed_count | ( |  | ) | const
| inline

## ◆ transformed_storage()

const VariableType* Ioss::Field::transformed_storage | ( |  | ) | const
| inline

## ◆ verify()

size_t Ioss::Field::verify | ( | size_t | data_size | ) | const

## Member Data Documentation

## ◆ index_

size_t Ioss::Field::index_ {}
| mutable private

## ◆ name_

std::string Ioss::Field::name_
| private

## ◆ rawCount_

size_t Ioss::Field::rawCount_ {}
| private

## ◆ rawStorage_

const VariableType* Ioss::Field::rawStorage_ {}
| private

## ◆ role_

RoleType Ioss::Field::role_ {INTERNAL}
| private

## ◆ size_

size_t Ioss::Field::size_ {}
| private

## ◆ transCount_

size_t Ioss::Field::transCount_ {}
| private

## ◆ transforms_

std::vector<Transform *> Ioss::Field::transforms_
| private

## ◆ transStorage_

const VariableType* Ioss::Field::transStorage_ {}
| private

## ◆ type_

BasicType Ioss::Field::type_ {INVALID}
| private

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

- src/Ioss_Field.h
- src/Ioss_Field.C