Rosetta 3.3
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
ObjexxFCL::FArray2< T > Class Template Reference

FArray2: Fortran-Compatible 2D Array Abstract Base Class. More...

#include <FArray2.hh>

Inheritance diagram for ObjexxFCL::FArray2< T >:
Inheritance graph
[legend]
Collaboration diagram for ObjexxFCL::FArray2< T >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Super::Base Base
typedef Base::Section Section
typedef Base::IR IR
typedef Base::value_type value_type
typedef Base::reference reference
typedef Base::const_reference const_reference
typedef Base::pointer pointer
typedef Base::const_pointer const_pointer
typedef Base::size_type size_type
typedef Base::difference_type difference_type
typedef Base::Value Value
typedef Base::Reference Reference
typedef Base::ConstReference ConstReference
typedef Base::Pointer Pointer
typedef Base::ConstPointer ConstPointer
typedef Base::Size Size
typedef Base::Difference Difference

Public Member Functions

virtual ~FArray2 ()
 Destructor.
FArray2operator= (FArray2 const &a)
 Copy Assignment.
template<typename U >
FArray2operator= (FArray2< U > const &a)
 Copy Assignment Template.
template<typename U >
FArray2operator+= (FArray2< U > const &a)
 += Array Template
template<typename U >
FArray2operator-= (FArray2< U > const &a)
 -= Array Template
template<typename U >
FArray2operator*= (FArray2< U > const &a)
 *= Array Template
FArray2operator= (T const &t)
 = Value
FArray2operator+= (T const &t)
 += Value
FArray2operator-= (T const &t)
 -= Value
FArray2operator*= (T const &t)
 *= Value
FArray2operator/= (T const &t)
 /= Value
T const & operator() (int const i1, int const i2) const
 array( i1, i2 ) const
T & operator() (int const i1, int const i2)
 array( i1, i2 )
Section const a (int const i1, int const i2) const
 Const Section Starting at array( i1, i2 )
Section a (int const i1, int const i2)
 Section Starting at array( i1, i2 )
size_type index (int const i1, int const i2) const
 Linear Index.
virtual bool contains (int const i1, int const i2) const
 Contains Indexed Element?
template<typename U >
bool equal_dimension (FArray2< U > const &a) const
 Equal Dimension?
bool is_identity () const
 Is Identity?
bool square () const
 Square?
bool symmetric () const
 Symmetric?
virtual IR const & I1 () const =0
 IndexRange of Dimension 1.
virtual int l1 () const =0
 Lower Index of Dimension 1.
virtual int u1 () const =0
 Upper Index of Dimension 1.
size_type size1 () const
 Size of Dimension 1.
virtual IR const & I2 () const =0
 IndexRange of Dimension 2.
virtual int l2 () const =0
 Lower Index of Dimension 2.
virtual int u2 () const =0
 Upper Index of Dimension 2.
virtual size_type size2 () const =0
 Size of Dimension 2.
FArray2clear ()
 Clear.
FArray2to_default ()
 Assign Default Value to all Elements.
FArray2to_identity ()
 Set to the Identity Matrix.
FArray2to_diag (T const &d)
 Set to Diagonal Matrix with Uniform Value.
FArray2set_diagonal (T const &d)
 Set Diagonal of Matrix to a Uniform Value.
FArray2transpose ()
 Transpose.
template<typename U >
FArray2right_multiply_by (FArray2< U > const &a)
 Right Multiply By Array.
template<typename U >
FArray2right_multiply_by_transpose (FArray2< U > const &a)
 Right Multiply By Transpose of Array.

Protected Types

typedef
internal::InitializerSentinel 
InitializerSentinel
typedef internal::ProxySentinel ProxySentinel

Protected Member Functions

 FArray2 ()
 Default Constructor.
 FArray2 (FArray2 const &a)
 Copy Constructor.
template<typename U >
 FArray2 (FArray2< U > const &a)
 Copy Constructor Template.
 FArray2 (size_type const size_a)
 Size Constructor.
 FArray2 (size_type const size_a, InitializerSentinel const &initialized)
 Size + InitializerSentinel Constructor.
 FArray2 (ProxySentinel const &proxy)
 Default Proxy Constructor.
 FArray2 (FArray2 const &a, ProxySentinel const &proxy)
 Copy Proxy Constructor.
 FArray2 (FArray2 &a, ProxySentinel const &proxy)
 Non-Const Copy Proxy Constructor.
 FArray2 (Base const &a, ProxySentinel const &proxy)
 Base Proxy Constructor.
 FArray2 (Base &a, ProxySentinel const &proxy)
 Non-Const Base Proxy Constructor.
 FArray2 (Section const &s, ProxySentinel const &proxy)
 Section Proxy Constructor.
 FArray2 (Section &s, ProxySentinel const &proxy)
 Non-Const Section Proxy Constructor.
 FArray2 (T const &t, ProxySentinel const &proxy)
 Value Proxy Constructor.
 FArray2 (T &t, ProxySentinel const &proxy)
 Non-Const Value Proxy Constructor.
virtual void dimension_assign (IR const &I1_a, IR const &I2_a)=0
 Dimension by IndexRanges.
void swap2DB (FArray2 &v)
 Swap.

Protected Attributes

size_type s1_
 Dimension 1 size.

Friends

class FArray2
class FArray2D
class FArray2P
class FArray2A
class KeyFArray2D
bool operator== (FArray2 const &a, FArray2 const &b)
 FArray2 == FArray2.
bool operator!= (FArray2 const &a, FArray2 const &b)
 FArray2 != FArray2.

Detailed Description

template<typename T>
class ObjexxFCL::FArray2< T >

FArray2: Fortran-Compatible 2D Array Abstract Base Class.


Member Typedef Documentation

template<typename T>
typedef Super::Base ObjexxFCL::FArray2< T >::Base

Reimplemented from ObjexxFCL::FArray< T >.

template<typename T>
typedef Base::IR ObjexxFCL::FArray2< T >::IR
template<typename T>
typedef Base::Pointer ObjexxFCL::FArray2< T >::Pointer
template<typename T>
typedef Base::pointer ObjexxFCL::FArray2< T >::pointer
template<typename T>
typedef internal::ProxySentinel ObjexxFCL::FArray2< T >::ProxySentinel [protected]

Reimplemented from ObjexxFCL::FArray< T >.

template<typename T>
typedef Base::Section ObjexxFCL::FArray2< T >::Section
template<typename T>
typedef Base::Size ObjexxFCL::FArray2< T >::Size
template<typename T>
typedef Base::Value ObjexxFCL::FArray2< T >::Value

Constructor & Destructor Documentation

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( ) [inline, protected]

Default Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( FArray2< T > const &  a) [inline, protected]

Copy Constructor.

template<typename T>
template<typename U >
ObjexxFCL::FArray2< T >::FArray2 ( FArray2< U > const &  a) [inline, explicit, protected]

Copy Constructor Template.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( size_type const  size_a) [inline, explicit, protected]

Size Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( size_type const  size_a,
InitializerSentinel const &  initialized 
) [inline, protected]

Size + InitializerSentinel Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( ProxySentinel const &  proxy) [inline, protected]

Default Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( FArray2< T > const &  a,
ProxySentinel const &  proxy 
) [inline, protected]

Copy Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( FArray2< T > &  a,
ProxySentinel const &  proxy 
) [inline, protected]

Non-Const Copy Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( Base const &  a,
ProxySentinel const &  proxy 
) [inline, protected]

Base Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( Base a,
ProxySentinel const &  proxy 
) [inline, protected]

Non-Const Base Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( Section const &  s,
ProxySentinel const &  proxy 
) [inline, protected]

Section Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( Section s,
ProxySentinel const &  proxy 
) [inline, protected]

Non-Const Section Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( T const &  t,
ProxySentinel const &  proxy 
) [inline, protected]

Value Proxy Constructor.

template<typename T>
ObjexxFCL::FArray2< T >::FArray2 ( T &  t,
ProxySentinel const &  proxy 
) [inline, protected]

Non-Const Value Proxy Constructor.

template<typename T>
virtual ObjexxFCL::FArray2< T >::~FArray2 ( ) [inline, virtual]

Destructor.


Member Function Documentation

template<typename T>
Section const ObjexxFCL::FArray2< T >::a ( int const  i1,
int const  i2 
) const [inline]
template<typename T>
Section ObjexxFCL::FArray2< T >::a ( int const  i1,
int const  i2 
) [inline]

Section Starting at array( i1, i2 )

Reimplemented in ObjexxFCL::FArray2A< T >, and ObjexxFCL::FArray2P< T >.

template<typename T>
FArray2& ObjexxFCL::FArray2< T >::clear ( ) [inline, virtual]
template<typename T>
virtual bool ObjexxFCL::FArray2< T >::contains ( int const  i1,
int const  i2 
) const [inline, virtual]
template<typename T>
virtual void ObjexxFCL::FArray2< T >::dimension_assign ( IR const &  I1_a,
IR const &  I2_a 
) [protected, pure virtual]
template<typename T>
template<typename U >
bool ObjexxFCL::FArray2< T >::equal_dimension ( FArray2< U > const &  a) const [inline]
template<typename T>
virtual IR const& ObjexxFCL::FArray2< T >::I1 ( ) const [pure virtual]
template<typename T>
virtual IR const& ObjexxFCL::FArray2< T >::I2 ( ) const [pure virtual]
template<typename T>
size_type ObjexxFCL::FArray2< T >::index ( int const  i1,
int const  i2 
) const [inline]
template<typename T>
bool ObjexxFCL::FArray2< T >::is_identity ( ) const [inline]

Is Identity?

template<typename T>
virtual int ObjexxFCL::FArray2< T >::l1 ( ) const [pure virtual]
template<typename T>
virtual int ObjexxFCL::FArray2< T >::l2 ( ) const [pure virtual]
template<typename T>
T& ObjexxFCL::FArray2< T >::operator() ( int const  i1,
int const  i2 
) [inline]
template<typename T>
T const& ObjexxFCL::FArray2< T >::operator() ( int const  i1,
int const  i2 
) const [inline]
template<typename T>
template<typename U >
FArray2& ObjexxFCL::FArray2< T >::operator*= ( FArray2< U > const &  a) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::operator*= ( T const &  t) [inline]
template<typename T>
template<typename U >
FArray2& ObjexxFCL::FArray2< T >::operator+= ( FArray2< U > const &  a) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::operator+= ( T const &  t) [inline]
template<typename T>
template<typename U >
FArray2& ObjexxFCL::FArray2< T >::operator-= ( FArray2< U > const &  a) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::operator-= ( T const &  t) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::operator/= ( T const &  t) [inline]
template<typename T>
template<typename U >
FArray2& ObjexxFCL::FArray2< T >::operator= ( FArray2< U > const &  a) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::operator= ( T const &  t) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::operator= ( FArray2< T > const &  a) [inline]
template<typename T>
template<typename U >
FArray2& ObjexxFCL::FArray2< T >::right_multiply_by ( FArray2< U > const &  a) [inline]

Right Multiply By Array.

template<typename T>
template<typename U >
FArray2& ObjexxFCL::FArray2< T >::right_multiply_by_transpose ( FArray2< U > const &  a) [inline]

Right Multiply By Transpose of Array.

template<typename T>
FArray2& ObjexxFCL::FArray2< T >::set_diagonal ( T const &  d) [inline]

Set Diagonal of Matrix to a Uniform Value.

template<typename T>
size_type ObjexxFCL::FArray2< T >::size1 ( ) const [inline]
template<typename T>
virtual size_type ObjexxFCL::FArray2< T >::size2 ( ) const [pure virtual]
template<typename T>
bool ObjexxFCL::FArray2< T >::square ( ) const [inline]
template<typename T>
void ObjexxFCL::FArray2< T >::swap2DB ( FArray2< T > &  v) [inline, protected]
template<typename T>
bool ObjexxFCL::FArray2< T >::symmetric ( ) const [inline]

Symmetric?

template<typename T>
FArray2& ObjexxFCL::FArray2< T >::to_default ( ) [inline, virtual]

Assign Default Value to all Elements.

Reimplemented from ObjexxFCL::FArray< T >.

template<typename T>
FArray2& ObjexxFCL::FArray2< T >::to_diag ( T const &  d) [inline]
template<typename T>
FArray2& ObjexxFCL::FArray2< T >::to_identity ( ) [inline]

Set to the Identity Matrix.

template<typename T>
FArray2& ObjexxFCL::FArray2< T >::transpose ( ) [inline]

Transpose.

template<typename T>
virtual int ObjexxFCL::FArray2< T >::u1 ( ) const [pure virtual]
template<typename T>
virtual int ObjexxFCL::FArray2< T >::u2 ( ) const [pure virtual]

Friends And Related Function Documentation

template<typename T>
friend class FArray2 [friend]
template<typename T>
friend class FArray2A [friend]
template<typename T>
friend class FArray2D [friend]
template<typename T>
friend class FArray2P [friend]
template<typename T>
friend class KeyFArray2D [friend]

Reimplemented in ObjexxFCL::KeyFArray2D< T >.

template<typename T>
bool operator!= ( FArray2< T > const &  a,
FArray2< T > const &  b 
) [friend]
template<typename T>
bool operator== ( FArray2< T > const &  a,
FArray2< T > const &  b 
) [friend]

Member Data Documentation

template<typename T>
size_type ObjexxFCL::FArray2< T >::s1_ [protected]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines