Neko 1.99.2
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
registry::registry_t Type Reference
Collaboration diagram for registry::registry_t:

Public Member Functions

procedure, pass(thisinit (this, size, expansion_size)
 Constructor.
 
procedure, pass(thisfree (this)
 Destructor.
 
procedure, pass(thisadd_field (this, dof, name, ignore_existing)
 Add a field to the registry.
 
procedure, pass(thisadd_vector (this, n, name, ignore_existing)
 Add a vector to the registry.
 
procedure, pass(thisadd_matrix (this, nrows, ncols, name, ignore_existing)
 Add a matrix to the registry.
 
procedure, pass(thisadd_alias (this, alias, name)
 Add an alias to a field in the registry.
 
procedure, pass(thisget_field_by_index (this, i)
 Get pointer to a stored field by index.
 
procedure, pass(thisget_vector_by_index (this, i)
 Get pointer to a stored vector by index.
 
procedure, pass(thisget_matrix_by_index (this, i)
 Get pointer to a stored matrix by index.
 
procedure, pass(thisget_field_by_name (this, name)
 Get pointer to a stored field by name.
 
procedure, pass(thisget_vector_by_name (this, name)
 Get pointer to a stored vector by name.
 
procedure, pass(thisget_matrix_by_name (this, name)
 Get pointer to a stored matrix by name.
 
generic get_field (this, i)
 Generic field getter.
 
generic get_field (this, name)
 Generic field getter.
 
generic get_vector (this, i)
 Generic vector getter.
 
generic get_vector (this, name)
 Generic vector getter.
 
generic get_matrix (this, i)
 Generic matrix getter.
 
generic get_matrix (this, name)
 Generic matrix getter.
 
procedure, pass(thisentry_exists (this, name)
 Check if an entry with a given name is already in the registry.
 
procedure, pass(thisfield_exists (this, name)
 Check if a field with a given name is already in the registry.
 
procedure, pass(thisvector_exists (this, name)
 Check if a vector with a given name is already in the registry.
 
procedure, pass(thismatrix_exists (this, name)
 Check if a matrix with a given name is already in the registry.
 
procedure, pass(thisget_size (this)
 Get total allocated size of fields.
 
procedure, pass(thisn_entries (this)
 Get number of registered entries.
 
procedure, pass(thisn_fields (this)
 Get the number of fields in the registry.
 
procedure, pass(thisn_vectors (this)
 Get the number of vectors in the registry.
 
procedure, pass(thisn_matrices (this)
 Get the number of matrices in the registry.
 
procedure, pass(thisn_aliases (this)
 Get the number of aliases in the registry.
 
procedure, pass(thisget_expansion_size (this)
 Get the expansion_size
 

Private Member Functions

procedure, pass(this), private expand (this)
 Expand the array of entries so as to accommodate more entries.
 

Private Attributes

type(registry_entry_t), dimension(:), allocatable, private entries
 List of entries stored.
 
type(json_file), private aliases
 List of aliases to entries stored.
 
integer, private n_entries_ = 0
 Number of registered entries.
 
integer, private n_aliases_ = 0
 Number of aliases.
 
integer, private expansion_size_ = 5
 The size the entries array is increased by upon reallocation.
 

Detailed Description

Definition at line 51 of file registry.f90.

Member Function/Subroutine Documentation

◆ add_alias()

procedure, pass(this) registry::registry_t::add_alias ( class(registry_t), intent(inout this,
character(len=*), intent(in alias,
character(len=*), intent(in name 
)
Parameters
aliasThe alias.
nameThe name of the entry.

Definition at line 77 of file registry.f90.

◆ add_field()

procedure, pass(this) registry::registry_t::add_field ( class(registry_t), intent(inout this,
type(dofmap_t), intent(in), target  dof,
character(len=*), intent(in), target  name,
logical, intent(in), optional  ignore_existing 
)
Parameters
dofThe map of degrees of freedom.
nameThe name of the field.
ignore_existingIf true, will do nothing if the field is already in the registry. If false, will throw an error. Optional, defaults to false.

Definition at line 71 of file registry.f90.

◆ add_matrix()

procedure, pass(this) registry::registry_t::add_matrix ( class(registry_t), intent(inout this,
integer, intent(in nrows,
integer, intent(in ncols,
character(len=*), intent(in), target  name,
logical, intent(in), optional  ignore_existing 
)
Parameters
nThe size of the matrix.
nameThe name of the matrix.
ignore_existingIf true, will do nothing if the matrix is already in the registry. If false, will throw an error. Optional, defaults to false.

Definition at line 75 of file registry.f90.

◆ add_vector()

procedure, pass(this) registry::registry_t::add_vector ( class(registry_t), intent(inout this,
integer, intent(in n,
character(len=*), intent(in), target  name,
logical, intent(in), optional  ignore_existing 
)
Parameters
nThe size of the vector.
nameThe name of the vector.
ignore_existingIf true, will do nothing if the vector is already in the registry. If false, will throw an error. Optional, defaults to false.

Definition at line 73 of file registry.f90.

◆ entry_exists()

procedure, pass(this) registry::registry_t::entry_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 103 of file registry.f90.

◆ expand()

procedure, pass(this), private registry::registry_t::expand ( class(registry_t), intent(inout this)
private

Definition at line 68 of file registry.f90.

◆ field_exists()

procedure, pass(this) registry::registry_t::field_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 105 of file registry.f90.

◆ free()

procedure, pass(this) registry::registry_t::free ( class(registry_t), intent(inout this)

Definition at line 66 of file registry.f90.

◆ get_expansion_size()

procedure, pass(this) registry::registry_t::get_expansion_size ( class(registry_t), intent(in this)

Definition at line 124 of file registry.f90.

◆ get_field() [1/2]

generic registry::registry_t::get_field ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)

Definition at line 96 of file registry.f90.

Here is the call graph for this function:

◆ get_field() [2/2]

generic registry::registry_t::get_field ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 96 of file registry.f90.

◆ get_field_by_index()

procedure, pass(this) registry::registry_t::get_field_by_index ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)

Definition at line 80 of file registry.f90.

◆ get_field_by_name()

procedure, pass(this) registry::registry_t::get_field_by_name ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 89 of file registry.f90.

◆ get_matrix() [1/2]

generic registry::registry_t::get_matrix ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)

Definition at line 100 of file registry.f90.

Here is the call graph for this function:

◆ get_matrix() [2/2]

generic registry::registry_t::get_matrix ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 100 of file registry.f90.

◆ get_matrix_by_index()

procedure, pass(this) registry::registry_t::get_matrix_by_index ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)

Definition at line 85 of file registry.f90.

◆ get_matrix_by_name()

procedure, pass(this) registry::registry_t::get_matrix_by_name ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 93 of file registry.f90.

◆ get_size()

procedure, pass(this) registry::registry_t::get_size ( class(registry_t), intent(in this)

Definition at line 112 of file registry.f90.

◆ get_vector() [1/2]

generic registry::registry_t::get_vector ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)

Definition at line 98 of file registry.f90.

Here is the call graph for this function:

◆ get_vector() [2/2]

generic registry::registry_t::get_vector ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 98 of file registry.f90.

◆ get_vector_by_index()

procedure, pass(this) registry::registry_t::get_vector_by_index ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)

Definition at line 82 of file registry.f90.

◆ get_vector_by_name()

procedure, pass(this) registry::registry_t::get_vector_by_name ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 91 of file registry.f90.

◆ init()

procedure, pass(this) registry::registry_t::init ( class(registry_t), intent(inout this,
integer, intent(in), optional  size,
integer, intent(in), optional  expansion_size 
)
Parameters
sizeThe allocation size of entries on init.
expansion_sizeThe number of entries added to entries on expansion.

Definition at line 64 of file registry.f90.

◆ matrix_exists()

procedure, pass(this) registry::registry_t::matrix_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 109 of file registry.f90.

◆ n_aliases()

procedure, pass(this) registry::registry_t::n_aliases ( class(registry_t), intent(in this)

Definition at line 122 of file registry.f90.

◆ n_entries()

procedure, pass(this) registry::registry_t::n_entries ( class(registry_t), intent(in this)

Definition at line 114 of file registry.f90.

◆ n_fields()

procedure, pass(this) registry::registry_t::n_fields ( class(registry_t), intent(in this)

Definition at line 116 of file registry.f90.

◆ n_matrices()

procedure, pass(this) registry::registry_t::n_matrices ( class(registry_t), intent(in this)

Definition at line 120 of file registry.f90.

◆ n_vectors()

procedure, pass(this) registry::registry_t::n_vectors ( class(registry_t), intent(in this)

Definition at line 118 of file registry.f90.

◆ vector_exists()

procedure, pass(this) registry::registry_t::vector_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)

Definition at line 107 of file registry.f90.

Member Data Documentation

◆ aliases

type(json_file), private registry::registry_t::aliases
private

Definition at line 55 of file registry.f90.

◆ entries

type(registry_entry_t), dimension(:), allocatable, private registry::registry_t::entries
private

Definition at line 53 of file registry.f90.

◆ expansion_size_

integer, private registry::registry_t::expansion_size_ = 5
private

Definition at line 61 of file registry.f90.

◆ n_aliases_

integer, private registry::registry_t::n_aliases_ = 0
private

Definition at line 59 of file registry.f90.

◆ n_entries_

integer, private registry::registry_t::n_entries_ = 0
private

Definition at line 57 of file registry.f90.


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