42 #ifndef THYRA_DEFAULT_SPMD_VECTOR_DECL_HPP 43 #define THYRA_DEFAULT_SPMD_VECTOR_DECL_HPP 46 #include "Thyra_SpmdVectorDefaultBase_decl.hpp" 68 template<
class Scalar>
82 ,
const ArrayRCP<Scalar> &localValues
113 ,
const ArrayRCP<Scalar> &localValues
124 ,ArrayRCP<Scalar> *localValues = NULL
136 ArrayRCP<const Scalar>
getRCPtr()
const;
140 const Scalar*
getPtr()
const;
150 RCP<const SpmdVectorSpaceBase<Scalar> >
spmdSpaceImpl()
const;
168 RCP<const SpmdVectorSpaceBase<Scalar> > spmdSpace_;
169 ArrayRCP<Scalar> localValues_;
179 template<
class Scalar>
188 template<
class Scalar>
190 ArrayRCP<const Scalar>
197 template<
class Scalar>
201 return localValues_.get();
205 template<
class Scalar>
209 return localValues_.get();
213 template<
class Scalar>
224 #endif // THYRA_DEFAULT_SPMD_VECTOR_DECL_HPP void uninitialize(RCP< const SpmdVectorSpaceBase< Scalar > > *spmdSpace=NULL, ArrayRCP< Scalar > *localValues=NULL, Ordinal *stride=NULL)
Set to an uninitialized state.
Ordinal getStride() const
Base class for SPMD vectors that can provide views of contiguous elements in a process.
RCP< const SpmdVectorSpaceBase< Scalar > > spmdSpace() const
Returns the SPMD vector space object for the range of *this multi-vector.
void getLocalVectorDataImpl(const Ptr< ArrayRCP< const Scalar > > &localValues) const
void initialize(const RCP< const SpmdVectorSpaceBase< Scalar > > &spmdSpace, const ArrayRCP< Scalar > &localValues, const Ordinal stride)
Initialize.
void getNonconstLocalVectorDataImpl(const Ptr< ArrayRCP< Scalar > > &localValues)
ArrayRCP< Scalar > getRCPtr()
Teuchos::Ordinal Ordinal
Type for the dimension of a vector space. `*.
Efficient concrete implementation subclass for SPMD vectors.
DefaultSpmdVector()
Construct to uninitialized.
RCP< const SpmdVectorSpaceBase< Scalar > > spmdSpaceImpl() const
Base abstract VectorSpaceBase class for all SPMD-based vector spaces.