// This file is part of Eigen, a lightweight C++ template library // for linear algebra. // // Copyright (C) 2015 Gael Guennebaud <gael.guennebaud@inria.fr> // // This Source Code Form is subject to the terms of the Mozilla // Public License v. 2.0. If a copy of the MPL was not distributed // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
/** * \ingroup SparseCore_Module * * \brief A sparse matrix expression referencing an existing sparse expression * * \tparam SparseMatrixType the equivalent sparse matrix type of the referenced data, it must be a template instance of class SparseMatrix. * \tparam Options specifies whether the a standard compressed format is required \c Options is \c #StandardCompressedFormat, or \c 0. * The default is \c 0. * * \sa class Ref
*/ #ifndef EIGEN_PARSED_BY_DOXYGEN template<typename MatScalar, int MatOptions, typename MatIndex, int Options, typename StrideType> class Ref<SparseMatrix<MatScalar,MatOptions,MatIndex>, Options, StrideType >
: public internal::SparseRefBase<Ref<SparseMatrix<MatScalar,MatOptions,MatIndex>, Options, StrideType > > #else template<typename SparseMatrixType, int Options> class Ref<SparseMatrixType, Options>
: public SparseMapBase<Derived,WriteAccessors> // yes, that's weird to use Derived here, but that works! #endif
{ typedef SparseMatrix<MatScalar,MatOptions,MatIndex> PlainObjectType; typedef internal::traits<Ref> Traits; template<int OtherOptions> inline Ref(const SparseMatrix<MatScalar,OtherOptions,MatIndex>& expr); template<int OtherOptions> inline Ref(const MappedSparseMatrix<MatScalar,OtherOptions,MatIndex>& expr); public:
// this is the const ref version template<typename MatScalar, int MatOptions, typename MatIndex, int Options, typename StrideType> class Ref<const SparseMatrix<MatScalar,MatOptions,MatIndex>, Options, StrideType>
: public internal::SparseRefBase<Ref<const SparseMatrix<MatScalar,MatOptions,MatIndex>, Options, StrideType> >
{ typedef SparseMatrix<MatScalar,MatOptions,MatIndex> TPlainObjectType; typedef internal::traits<Ref> Traits; public:
/** * \ingroup SparseCore_Module * * \brief A sparse vector expression referencing an existing sparse vector expression * * \tparam SparseVectorType the equivalent sparse vector type of the referenced data, it must be a template instance of class SparseVector. * * \sa class Ref
*/ #ifndef EIGEN_PARSED_BY_DOXYGEN template<typename MatScalar, int MatOptions, typename MatIndex, int Options, typename StrideType> class Ref<SparseVector<MatScalar,MatOptions,MatIndex>, Options, StrideType >
: public internal::SparseRefBase<Ref<SparseVector<MatScalar,MatOptions,MatIndex>, Options, StrideType > > #else template<typename SparseVectorType> class Ref<SparseVectorType>
: public SparseMapBase<Derived,WriteAccessors> #endif
{ typedef SparseVector<MatScalar,MatOptions,MatIndex> PlainObjectType; typedef internal::traits<Ref> Traits; template<int OtherOptions> inline Ref(const SparseVector<MatScalar,OtherOptions,MatIndex>& expr); public:
// this is the const ref version template<typename MatScalar, int MatOptions, typename MatIndex, int Options, typename StrideType> class Ref<const SparseVector<MatScalar,MatOptions,MatIndex>, Options, StrideType>
: public internal::SparseRefBase<Ref<const SparseVector<MatScalar,MatOptions,MatIndex>, Options, StrideType> >
{ typedef SparseVector<MatScalar,MatOptions,MatIndex> TPlainObjectType; typedef internal::traits<Ref> Traits; public:
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.