v0.8.13
Public Member Functions | Protected Attributes | Private Attributes | List of all members
FTensor::Tensor0< T * > Class Template Reference

#include <src/ftensor/src/FTensor/Tensor0.hpp>

Collaboration diagram for FTensor::Tensor0< T * >:
[legend]

Public Member Functions

 Tensor0 (T *d, const int i=1)
 
const Tensor0operator= (const Tensor0 &a)
 
template<class U >
const Tensor0operator= (const U &d)
 
template<class U >
const Tensor0operator+= (const U &d)
 
template<class U >
const Tensor0operator-= (const U &d)
 
template<class U >
const Tensor0operator*= (const U &d)
 
template<class U >
const Tensor0operator/= (const U &d)
 
template<class U >
const Tensor0operator>>= (U &d)
 
template<class U >
const Tensor0operator<<= (const U d)
 
const T * operator & () const
 
 operator T () const
 
const Tensor0operator++ () const
 

Protected Attributes

T *restrict data
 

Private Attributes

const int inc
 

Detailed Description

template<class T>
class FTensor::Tensor0< T * >

Definition at line 19 of file Tensor0.hpp.

Constructor & Destructor Documentation

◆ Tensor0()

template<class T >
FTensor::Tensor0< T * >::Tensor0 ( T *  d,
const int  i = 1 
)

Definition at line 27 of file Tensor0.hpp.

27 : inc(i), data(d) {}
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

Member Function Documentation

◆ operator &()

template<class T >
const T* FTensor::Tensor0< T * >::operator& ( ) const

Definition at line 79 of file Tensor0.hpp.

79 { return data; }

◆ operator T()

template<class T >
FTensor::Tensor0< T * >::operator T ( ) const

Definition at line 80 of file Tensor0.hpp.

80 { return *data; }

◆ operator*=()

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator*= ( const U &  d)

Definition at line 50 of file Tensor0.hpp.

51  {
52  *data *= d;
53  return *this;
54  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

◆ operator++()

template<class T >
const Tensor0& FTensor::Tensor0< T * >::operator++ ( ) const

Definition at line 85 of file Tensor0.hpp.

86  {
87  data += inc;
88  return *this;
89  }

◆ operator+=()

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator+= ( const U &  d)

Definition at line 40 of file Tensor0.hpp.

41  {
42  *data += d;
43  return *this;
44  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

◆ operator-=()

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator-= ( const U &  d)

Definition at line 45 of file Tensor0.hpp.

46  {
47  *data -= d;
48  return *this;
49  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

◆ operator/=()

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator/= ( const U &  d)

Definition at line 55 of file Tensor0.hpp.

56  {
57  *data /= d;
58  return *this;
59  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

◆ operator<<=()

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator<<= ( const U  d)

Definition at line 68 of file Tensor0.hpp.

69  {
70  *data <<= d;
71  return *this;
72  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

◆ operator=() [1/2]

template<class T >
const Tensor0& FTensor::Tensor0< T * >::operator= ( const Tensor0< T * > &  a)

Definition at line 29 of file Tensor0.hpp.

30  {
31  *data = *(a.data);
32  return *this;
33  }

◆ operator=() [2/2]

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator= ( const U &  d)

Definition at line 35 of file Tensor0.hpp.

36  {
37  *data = d;
38  return *this;
39  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

◆ operator>>=()

template<class T >
template<class U >
const Tensor0& FTensor::Tensor0< T * >::operator>>= ( U &  d)

Definition at line 62 of file Tensor0.hpp.

63  {
64  d >>= *data;
65  return *this;
66  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T *> &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27

Member Data Documentation

◆ data

template<class T >
T* restrict FTensor::Tensor0< T * >::data
mutableprotected

Definition at line 24 of file Tensor0.hpp.

◆ inc

template<class T >
const int FTensor::Tensor0< T * >::inc
private

Definition at line 21 of file Tensor0.hpp.


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