IOSS 2.0
Loading...
Searching...
No Matches
Ioss::VariableType Class Referenceabstract

A generic variable type. More...

#include <Ioss_VariableType.h>

Inheritance diagram for Ioss::VariableType:
[legend]

Public Types

enum class  Type {
  UNKNOWN , SCALAR , STANDARD , COMPOSED ,
  COMPOSITE , CONSTRUCTED , ELEMENT , NAMED_SUFFIX ,
  BASIS , QUADRATURE
}
 

Public Member Functions

 VariableType (const VariableType &)=delete
 
VariableTypeoperator= (const VariableType &)=delete
 
virtual ~VariableType ()=default
 
virtual void print () const
 
IOSS_NODISCARD int component_count () const
 
virtual IOSS_NODISCARD int suffix_count () const
 
IOSS_NODISCARD std::string name () const
 
virtual IOSS_NODISCARD Type type () const =0
 
virtual IOSS_NODISCARD std::string type_string () const =0
 
virtual IOSS_NODISCARD std::string label (int which, char suffix_sep='_') const =0
 
virtual IOSS_NODISCARD std::string label_name (const std::string &base, int which, char suffix_sep1='_', char suffix_sep2='_', bool suffices_uppercase=false) const
 
virtual IOSS_NODISCARD bool match (const std::vector< Suffix > &suffices) const
 

Static Public Member Functions

static void alias (const std::string &base, const std::string &syn)
 
static int describe (NameList *names)
 Get the names of variable types known to IOSS.
 
static IOSS_NODISCARD NameList describe ()
 Get the names of variable types known to IOSS.
 
static IOSS_NODISCARD std::vector< Ioss::VariableType * > external_types (Ioss::VariableType::Type type)
 
static bool create_named_suffix_type (const std::string &type_name, const Ioss::NameList &suffices)
 
static bool create_named_suffix_field_type (const std::string &type_name, const Ioss::NameList &suffices)
 
static bool create_basis_type (const std::string &type_name, const Ioss::Basis &basis)
 
static bool create_quadrature_type (const std::string &type_name, const std::vector< Ioss::QuadraturePoint > &quad_points)
 
static bool get_field_type_mapping (const std::string &field, std::string *type)
 
static bool add_field_type_mapping (const std::string &raw_field, const std::string &raw_type)
 
static IOSS_NODISCARD std::string numeric_label (int which, int ncomp, const std::string &name)
 
static IOSS_NODISCARD const VariableTypefactory (const std::string &raw_name, int copies=1)
 
static IOSS_NODISCARD const VariableTypefactory (const std::string &raw_name, const std::string &secondary)
 
static IOSS_NODISCARD const VariableTypefactory (const std::vector< Suffix > &suffices, bool ignore_realn_fields=false)
 
static Registryregistry ()
 

Protected Member Functions

 VariableType (const std::string &type, int comp_count, bool delete_me=false)
 

Static Private Member Functions

static bool build_variable_type (const std::string &raw_type)
 

Private Attributes

const std::string name_ {}
 
int componentCount {}
 

Detailed Description

A generic variable type.

Member Enumeration Documentation

◆ Type

enum class Ioss::VariableType::Type
strong
Enumerator
UNKNOWN 
SCALAR 
STANDARD 
COMPOSED 
COMPOSITE 
CONSTRUCTED 
ELEMENT 
NAMED_SUFFIX 
BASIS 
QUADRATURE 

Constructor & Destructor Documentation

◆ VariableType() [1/2]

Ioss::VariableType::VariableType ( const VariableType & )
delete

◆ ~VariableType()

virtual Ioss::VariableType::~VariableType ( )
virtualdefault

◆ VariableType() [2/2]

Ioss::VariableType::VariableType ( const std::string & type,
int comp_count,
bool delete_me = false )
protected

Member Function Documentation

◆ add_field_type_mapping()

bool Ioss::VariableType::add_field_type_mapping ( const std::string & raw_field,
const std::string & raw_type )
static

◆ alias()

void Ioss::VariableType::alias ( const std::string & base,
const std::string & syn )
static

◆ build_variable_type()

bool Ioss::VariableType::build_variable_type ( const std::string & raw_type)
staticprivate

◆ component_count()

int Ioss::VariableType::component_count ( ) const
inline

◆ create_basis_type()

bool Ioss::VariableType::create_basis_type ( const std::string & type_name,
const Ioss::Basis & basis )
static

◆ create_named_suffix_field_type()

static bool Ioss::VariableType::create_named_suffix_field_type ( const std::string & type_name,
const Ioss::NameList & suffices )
inlinestatic

◆ create_named_suffix_type()

bool Ioss::VariableType::create_named_suffix_type ( const std::string & type_name,
const Ioss::NameList & suffices )
static

◆ create_quadrature_type()

bool Ioss::VariableType::create_quadrature_type ( const std::string & type_name,
const std::vector< Ioss::QuadraturePoint > & quad_points )
static

◆ describe() [1/2]

Ioss::NameList Ioss::VariableType::describe ( )
static

Get the names of variable types known to IOSS.

Returns
The list of known variable type names.

◆ describe() [2/2]

int Ioss::VariableType::describe ( NameList * names)
static

Get the names of variable types known to IOSS.

Parameters
[out]namesThe list of known variable type names.
Returns
The number of known variable types.

◆ external_types()

std::vector< Ioss::VariableType * > Ioss::VariableType::external_types ( Ioss::VariableType::Type type)
static

◆ factory() [1/3]

const VariableType * Ioss::VariableType::factory ( const std::string & raw_name,
const std::string & secondary )
static

◆ factory() [2/3]

const VariableType * Ioss::VariableType::factory ( const std::string & raw_name,
int copies = 1 )
static

◆ factory() [3/3]

const VariableType * Ioss::VariableType::factory ( const std::vector< Suffix > & suffices,
bool ignore_realn_fields = false )
static

◆ get_field_type_mapping()

bool Ioss::VariableType::get_field_type_mapping ( const std::string & field,
std::string * type )
static

◆ label()

◆ label_name()

std::string Ioss::VariableType::label_name ( const std::string & base,
int which,
char suffix_sep1 = '_',
char suffix_sep2 = '_',
bool suffices_uppercase = false ) const
virtual

◆ match()

bool Ioss::VariableType::match ( const std::vector< Suffix > & suffices) const
virtual

◆ name()

std::string Ioss::VariableType::name ( ) const
inline

◆ numeric_label()

std::string Ioss::VariableType::numeric_label ( int which,
int ncomp,
const std::string & name )
static

◆ operator=()

VariableType & Ioss::VariableType::operator= ( const VariableType & )
delete

◆ print()

void Ioss::VariableType::print ( ) const
virtual

◆ registry()

Registry & Ioss::VariableType::registry ( )
static

◆ suffix_count()

int Ioss::VariableType::suffix_count ( ) const
inlinevirtual

◆ type()

◆ type_string()

Member Data Documentation

◆ componentCount

int Ioss::VariableType::componentCount {}
private

◆ name_

const std::string Ioss::VariableType::name_ {}
private

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