DGtal  1.2.0
Public Types | Public Member Functions | Private Attributes
DGtal::concepts::CVectorSpace< T > Struct Template Reference

Aim: Base concept for vector space structure. More...

#include <DGtal/math/linalg/CVectorSpace.h>

Inheritance diagram for DGtal::concepts::CVectorSpace< T >:
[legend]

Public Types

typedef T::Scalar Scalar
 

Public Member Functions

 BOOST_CONCEPT_ASSERT ((concepts::CEuclideanRing< Scalar >))
 
 BOOST_CONCEPT_USAGE (CVectorSpace)
 

Private Attributes

const T x
 
const T y
 
z
 
Scalar a
 

Detailed Description

template<typename T>
struct DGtal::concepts::CVectorSpace< T >

Aim: Base concept for vector space structure.

Description of concept 'CVectorSpace'

Refinement of

Associated types

Notation

Definitions

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
Reset container content z.clear()
Addition z = x + y VectorSpace
Substraction z = x - y VectorSpace
External multiplication z = a * x VectorSpace

Invariants

Models

Notes

Template Parameters
Tthe type that should be a model of CVectorSpace.

Definition at line 93 of file CVectorSpace.h.

Member Typedef Documentation

◆ Scalar

template<typename T >
typedef T::Scalar DGtal::concepts::CVectorSpace< T >::Scalar

Definition at line 97 of file CVectorSpace.h.

Member Function Documentation

◆ BOOST_CONCEPT_ASSERT()

template<typename T >
DGtal::concepts::CVectorSpace< T >::BOOST_CONCEPT_ASSERT ( (concepts::CEuclideanRing< Scalar >)  )

◆ BOOST_CONCEPT_USAGE()

template<typename T >
DGtal::concepts::CVectorSpace< T >::BOOST_CONCEPT_USAGE ( CVectorSpace< T >  )
inline

Definition at line 101 of file CVectorSpace.h.

102  {
103  z.clear();
104  z = x + y;
105  z = x - y;
106  z = a * x;
107  }

References DGtal::concepts::CVectorSpace< T >::x, and DGtal::concepts::CVectorSpace< T >::y.

Field Documentation

◆ a

template<typename T >
Scalar DGtal::concepts::CVectorSpace< T >::a
private

Definition at line 112 of file CVectorSpace.h.

◆ x

template<typename T >
const T DGtal::concepts::CVectorSpace< T >::x
private

◆ y

template<typename T >
const T DGtal::concepts::CVectorSpace< T >::y
private

◆ z

template<typename T >
T DGtal::concepts::CVectorSpace< T >::z
private

Definition at line 111 of file CVectorSpace.h.


The documentation for this struct was generated from the following file: