AbstractLinAlgPack::VectorSpaceSubSpace Class Reference

Concrete subclass for a default sub-space of a vector. More...

#include <AbstractLinAlgPack_VectorSpaceSubSpace.hpp>

Inheritance diagram for AbstractLinAlgPack::VectorSpaceSubSpace:

Inheritance graph
[legend]
List of all members.

Overridden from VectorSpace

bool is_compatible (const VectorSpace &) const
 
bool is_in_core () const
 
index_type dim () const
 
vec_mut_ptr_t create_member () const
 
space_ptr_t clone () const
 
space_ptr_t sub_space (const Range1D &rng) const
 

Public Member Functions

 VectorSpaceSubSpace ()
 Constructs to uninitialized.
 VectorSpaceSubSpace (const space_ptr_t &full_space, const Range1D &rng)
 Calls this->initialize().
void initialize (const space_ptr_t &full_space, const Range1D &rng)
 Initialize.
void set_uninitialized ()
 Set uninitilized.
const space_ptr_tfull_space () const
 
const Range1Drng () const
 
void validate_range (const Range1D &rng) const
 Validate rng.

Private Attributes

space_ptr_t full_space_
 If space_.get() == NULL, then uninitalized (dim == 0).
Range1D rng_
 The range of elements from this space to represent!

Detailed Description

Concrete subclass for a default sub-space of a vector.

There is not much to this subclass. It basically implements all of its methods based on the external VectorSpace interface to implement is_compatible() and sub_space() and and relys on a default subclass VectorMutableSubView to implement create_member().

The default constructor, copy constructor and assignment operator functions are allowed and have the correct behavior.

Definition at line 47 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.


Constructor & Destructor Documentation

AbstractLinAlgPack::VectorSpaceSubSpace::VectorSpaceSubSpace (  )  [inline]

Constructs to uninitialized.

Postconditions: see set_uninitialized().

Definition at line 126 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.

AbstractLinAlgPack::VectorSpaceSubSpace::VectorSpaceSubSpace ( const space_ptr_t full_space,
const Range1D rng 
)

Calls this->initialize().

Definition at line 37 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.


Member Function Documentation

void AbstractLinAlgPack::VectorSpaceSubSpace::initialize ( const space_ptr_t full_space,
const Range1D rng 
)

Initialize.

Constructs a sub-space of the vector space this = space.sub_space(rng).

Preconditions:

Postconditions:

Parameters:
full_space [in] The original full vector space (must be full_space.get() != NULL).
rng [in] The range of element that this vector sub-space will represent.

Definition at line 42 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

void AbstractLinAlgPack::VectorSpaceSubSpace::set_uninitialized (  ) 

Set uninitilized.

Postconditions:

Definition at line 61 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

const VectorSpace::space_ptr_t & AbstractLinAlgPack::VectorSpaceSubSpace::full_space (  )  const [inline]

Definition at line 131 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.

const Range1D & AbstractLinAlgPack::VectorSpaceSubSpace::rng (  )  const [inline]

Definition at line 137 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.

void AbstractLinAlgPack::VectorSpaceSubSpace::validate_range ( const Range1D rng  )  const [inline]

Validate rng.

Definition at line 144 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.

bool AbstractLinAlgPack::VectorSpaceSubSpace::is_compatible ( const VectorSpace  )  const [virtual]

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 84 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

bool AbstractLinAlgPack::VectorSpaceSubSpace::is_in_core (  )  const [virtual]

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 98 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

index_type AbstractLinAlgPack::VectorSpaceSubSpace::dim (  )  const [virtual]

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 103 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

VectorSpace::vec_mut_ptr_t AbstractLinAlgPack::VectorSpaceSubSpace::create_member (  )  const [virtual]

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 108 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

VectorSpace::space_ptr_t AbstractLinAlgPack::VectorSpaceSubSpace::clone (  )  const [virtual]

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 119 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.

VectorSpace::space_ptr_t AbstractLinAlgPack::VectorSpaceSubSpace::sub_space ( const Range1D rng  )  const [virtual]

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 127 of file AbstractLinAlgPack_VectorSpaceSubSpace.cpp.


Member Data Documentation

space_ptr_t AbstractLinAlgPack::VectorSpaceSubSpace::full_space_ [private]

If space_.get() == NULL, then uninitalized (dim == 0).

Definition at line 117 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.

Range1D AbstractLinAlgPack::VectorSpaceSubSpace::rng_ [private]

The range of elements from this space to represent!

Definition at line 118 of file AbstractLinAlgPack_VectorSpaceSubSpace.hpp.


The documentation for this class was generated from the following files:
Generated on Wed May 12 21:57:03 2010 for MOOCHO (Single Doxygen Collection) by  doxygen 1.4.7