MOOCHO (Single Doxygen Collection) Version of the Day
Public Types | Private Attributes
AbstractLinAlgPack::VectorSpaceFactory Class Reference

Abstract interface for objects that can create vector spaces of a specified dimension. More...

#include <AbstractLinAlgPack_VectorSpaceFactory.hpp>

Inheritance diagram for AbstractLinAlgPack::VectorSpaceFactory:
Inheritance graph
[legend]

List of all members.

Public Types

typedef Teuchos::RCP< const
InnerProduct
inner_prod_ptr_t
 
typedef Teuchos::RCP< const
VectorSpace
space_ptr_t
 

Private Attributes

InnerProductinner_prod

Constructors / initializers

virtual ~VectorSpaceFactory ()
 
 VectorSpaceFactory (const inner_prod_ptr_t &inner_prod=Teuchos::null)
 Calls inner_prod()
virtual void inner_prod (const inner_prod_ptr_t &inner_prod)
 Initialize with an inner product object that will be given to vector.
virtual const inner_prod_ptr_t inner_prod () const
 Return the smart pointer to the inner product strategy object.

Pure virtual functions that must be overridden

virtual space_ptr_t create_vec_spc (index_type dim) const =0
 Create a vector space of the given dimension.

Detailed Description

Abstract interface for objects that can create vector spaces of a specified dimension.

ToDo: Finish documentation!

Definition at line 41 of file AbstractLinAlgPack_VectorSpaceFactory.hpp.


Member Typedef Documentation

Definition at line 46 of file AbstractLinAlgPack_VectorSpaceFactory.hpp.

Definition at line 48 of file AbstractLinAlgPack_VectorSpaceFactory.hpp.


Constructor & Destructor Documentation

AbstractLinAlgPack::VectorSpaceFactory::~VectorSpaceFactory ( ) [virtual]

Definition at line 36 of file AbstractLinAlgPack_VectorSpaceFactory.cpp.

AbstractLinAlgPack::VectorSpaceFactory::VectorSpaceFactory ( const inner_prod_ptr_t inner_prod = Teuchos::null)

Calls inner_prod()

Definition at line 39 of file AbstractLinAlgPack_VectorSpaceFactory.cpp.


Member Function Documentation

virtual void AbstractLinAlgPack::VectorSpaceFactory::inner_prod ( const inner_prod_ptr_t inner_prod) [virtual]

Initialize with an inner product object that will be given to vector.

Parameters:
inner_prod[in] Smart pointer to inner product strategy object. If inner_prod.get()==NULL then an InnerProductDot object will be used instead.

Postconditions:

  • [inner_prod.get() != NULL] this->inner_prod().get() == inner_prod.get()
  • [inner_prod.get() == NULL] dynamic_cast<InnerProductDot*>(this->inner_prod().get()) != NULL

Return the smart pointer to the inner product strategy object.

Postconditions:

  • return.get() != NULL
virtual space_ptr_t AbstractLinAlgPack::VectorSpaceFactory::create_vec_spc ( index_type  dim) const [pure virtual]

Create a vector space of the given dimension.

Postconditions:

Returns:
Returns a smart reference counted pointer to a dynamically allocated vector space object that can be used to create vector.

Implemented in AbstractLinAlgPack::VectorSpaceFactorySerial, and AbstractLinAlgPack::VectorSpaceFactoryThyra.


Member Data Documentation

Definition at line 103 of file AbstractLinAlgPack_VectorSpaceFactory.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines