ExaTN
Public Member Functions | List of all members
exatn::numerics::SpaceRegister Class Reference

Public Member Functions

 SpaceRegister (const SpaceRegister &)=delete
 
SpaceRegisteroperator= (const SpaceRegister &)=delete
 
 SpaceRegister (SpaceRegister &&) noexcept=default
 
SpaceRegisteroperator= (SpaceRegister &&) noexcept=default
 
SpaceId registerSpace (std::shared_ptr< VectorSpace > space)
 
const VectorSpacegetSpace (SpaceId id) const
 
const VectorSpacegetSpace (const std::string &name) const
 
SubspaceId registerSubspace (std::shared_ptr< Subspace > subspace)
 
const SubspacegetSubspace (const std::string &space_name, const std::string &subspace_name) const
 

Member Function Documentation

◆ getSpace() [1/2]

const VectorSpace * exatn::numerics::SpaceRegister::getSpace ( const std::string &  name) const

Returns a non-owning pointer to a stored vector space by its symbolic name.

◆ getSpace() [2/2]

const VectorSpace * exatn::numerics::SpaceRegister::getSpace ( SpaceId  id) const

Returns a non-owning pointer to a stored vector space by its id.

◆ getSubspace()

const Subspace * exatn::numerics::SpaceRegister::getSubspace ( const std::string &  space_name,
const std::string &  subspace_name 
) const

Returns a non-owning pointer to a registerd subspace of a registered vector space.

◆ registerSpace()

SpaceId exatn::numerics::SpaceRegister::registerSpace ( std::shared_ptr< VectorSpace space)

Registers a named vector space and returns its registered id. If it has already been registered before, returns its existing id. Returned id = SOME_SPACE indicates an attempt to register a named vector space when another vector space has already been registered under the same name.

◆ registerSubspace()

SubspaceId exatn::numerics::SpaceRegister::registerSubspace ( std::shared_ptr< Subspace subspace)

Registers a named subspace of a named vector space and returns its registered id. If the subspace has already been registered before, returns its existing id. Returned id = UNREG_SUBSPACE means that another subspace with the same name has already been registered before.


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