Rosetta  2019.07
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Private Types | Friends | List of all members
ObjexxFCL::FArray1< typename > Class Template Referenceabstract

FArray1: Fortran-Compatible 1D Array Abstract Base Class. More...

#include <FArray1.hh>

Inheritance diagram for ObjexxFCL::FArray1< typename >:
Inheritance graph
[legend]

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
 
typedef void iterator_category
 
- Public Types inherited from ObjexxFCL::FArray< T >
typedef FArray< TBase
 
typedef FArrayTraits< TTraits
 
typedef FArraySection< TSection
 
typedef IndexRange IR
 
typedef T value_type
 
typedef Treference
 
typedef T const & const_reference
 
typedef Tpointer
 
typedef T const * const_pointer
 
typedef std::size_t size_type
 
typedef std::ptrdiff_t difference_type
 
typedef T Value
 
typedef TReference
 
typedef T const & ConstReference
 
typedef TPointer
 
typedef T const * ConstPointer
 
typedef std::size_t Size
 
typedef std::ptrdiff_t Difference
 

Public Member Functions

virtual ~FArray1 ()
 Destructor. More...
 
FArray1operator= (FArray1 const &a)
 Copy Assignment. More...
 
template<typename U >
FArray1operator= (FArray1< U > const &a)
 Copy Assignment Template. More...
 
template<typename U >
FArray1operator+= (FArray1< U > const &a)
 += Array Template More...
 
template<typename U >
FArray1operator-= (FArray1< U > const &a)
 -= Array Template More...
 
FArray1operator= (T const &t)
 = Value More...
 
FArray1operator+= (T const &t)
 += Value More...
 
FArray1operator-= (T const &t)
 -= Value More...
 
FArray1operator*= (T const &t)
 *= Value More...
 
FArray1operator/= (T const &t)
 /= Value More...
 
T const & operator() (int const i) const
 array( i ) const More...
 
Toperator() (int const i)
 array( i ) More...
 
Section const a (int const i) const
 Const Section Starting at array( i ) More...
 
Section a (int const i)
 Section Starting at array( i ) More...
 
size_type index (int const i) const
 Linear Index. More...
 
virtual bool contains (int const i) const
 Contains Indexed Element? More...
 
template<typename U >
bool equal_dimension (FArray1< U > const &a) const
 Equal Dimension? More...
 
virtual IR const & I1 () const =0
 IndexRange. More...
 
virtual int l1 () const =0
 Lower Index. More...
 
virtual int u1 () const =0
 Upper Index. More...
 
virtual size_type size1 () const =0
 Size. More...
 
virtual IR const & I () const =0
 IndexRange. More...
 
virtual int l () const =0
 Lower Index. More...
 
virtual int u () const =0
 Upper Index. More...
 
T length () const
 Length. More...
 
T length_squared () const
 Length Squared. More...
 
FArray1clear ()
 Clear. More...
 
FArray1to_default ()
 Assign Default Value to all Elements. More...
 
FArray1normalize ()
 Normalize to Unit Length. More...
 
- Public Member Functions inherited from ObjexxFCL::FArray< T >
virtual ~FArray ()
 Destructor. More...
 
FArrayoperator= (T const &t)
 = Value More...
 
FArrayoperator+= (T const &t)
 += Value More...
 
FArrayoperator-= (T const &t)
 -= Value More...
 
FArrayoperator*= (T const &t)
 *= Value More...
 
FArrayoperator/= (T const &t)
 /= Value More...
 
T const & operator[] (size_type const i) const
 array[ i ] const: Linear Subscript More...
 
Toperator[] (size_type const i)
 array[ i ]: Linear Subscript More...
 
virtual bool dimensions_initialized () const =0
 Dimensions Initialized? More...
 
virtual bool initializer_active () const =0
 Initializer Active? More...
 
bool active () const
 Active? More...
 
bool array_size_bounded () const
 Array Size Bounded? More...
 
bool array_size_unbounded () const
 Array Size Unbounded? More...
 
bool size_bounded () const
 Active Array Size Bounded? More...
 
bool size_unbounded () const
 Active Array Size Unbounded? More...
 
bool owner () const
 Owner? More...
 
bool proxy () const
 Proxy? More...
 
bool is_default () const
 All Elements Default Valued? More...
 
bool is_zero () const
 All Elements Zero? More...
 
bool is_uniform () const
 Uniform Valued? More...
 
bool is_uniform (T const &t) const
 Uniform Valued with Specified Value? More...
 
size_type array_size () const
 Array Size. More...
 
size_type size () const
 Active Array Size. More...
 
void zero ()
 Assign Zero to all Elements. More...
 
void to_zero ()
 Assign Zero to all Elements. More...
 

Protected Types

typedef
internal::InitializerSentinel 
InitializerSentinel
 
typedef internal::ProxySentinel ProxySentinel
 
- Protected Types inherited from ObjexxFCL::FArray< T >
typedef
internal::InitializerSentinel 
InitializerSentinel
 
typedef internal::ProxySentinel ProxySentinel
 

Protected Member Functions

 FArray1 ()
 Default Constructor. More...
 
 FArray1 (FArray1 const &a)
 Copy Constructor. More...
 
template<typename U >
 FArray1 (FArray1< U > const &a)
 Copy Constructor Template. More...
 
 FArray1 (size_type const size_a)
 Size Constructor. More...
 
 FArray1 (size_type const size_a, InitializerSentinel const &initialized)
 Size + InitializerSentinel Constructor. More...
 
 FArray1 (ProxySentinel const &proxy)
 Default Proxy Constructor. More...
 
 FArray1 (FArray1 const &a, ProxySentinel const &proxy)
 Copy Proxy Constructor. More...
 
 FArray1 (FArray1 &a, ProxySentinel const &proxy)
 Non-Const Copy Proxy Constructor. More...
 
 FArray1 (Base const &a, ProxySentinel const &proxy)
 Base Proxy Constructor. More...
 
 FArray1 (Base &a, ProxySentinel const &proxy)
 Non-Const Base Proxy Constructor. More...
 
 FArray1 (Section const &s, ProxySentinel const &proxy)
 Section Proxy Constructor. More...
 
 FArray1 (Section &s, ProxySentinel const &proxy)
 Non-Const Section Proxy Constructor. More...
 
 FArray1 (T const &t, ProxySentinel const &proxy)
 Value Proxy Constructor. More...
 
 FArray1 (T &t, ProxySentinel const &proxy)
 Non-Const Value Proxy Constructor. More...
 
virtual void dimension_assign (IR const &I_a)=0
 Dimension by IndexRanges. More...
 
void swap1DB (FArray1 &v)
 Swap. More...
 
- Protected Member Functions inherited from ObjexxFCL::FArray< T >
 FArray ()
 Default Constructor. More...
 
 FArray (FArray const &a)
 Copy Constructor. More...
 
 FArray (FArray< U > const &a)
 Copy Constructor Template. More...
 
 FArray (size_type const size_a)
 Size Constructor. More...
 
 FArray (size_type const size_a, InitializerSentinel const &)
 Size + InitializerSentinel Constructor. More...
 
 FArray (ProxySentinel const &)
 Default Proxy Constructor. More...
 
 FArray (FArray const &a, ProxySentinel const &)
 Array Proxy Constructor. More...
 
 FArray (FArray &a, ProxySentinel const &)
 Non-Const Array Proxy Constructor. More...
 
 FArray (Section const &s, ProxySentinel const &)
 Section Proxy Constructor. More...
 
 FArray (Section &s, ProxySentinel const &)
 Non-Const Section Proxy Constructor. More...
 
 FArray (T const &t, ProxySentinel const &)
 Value Proxy Constructor. More...
 
 FArray (T &t, ProxySentinel const &)
 Non-Const Value Proxy Constructor. More...
 
FArrayoperator= (FArray const &a)
 Copy Assignment. More...
 
void operator= (FArray< U > const &a)
 Copy Assignment Template. More...
 
void operator+= (FArray< U > const &a)
 += Array Template More...
 
void operator-= (FArray< U > const &a)
 -= Array Template More...
 
void shift_set (int const shift_a)
 Shift Setup. More...
 
void size_set (size_type const size_a)
 Active Array Size Setup. More...
 
FArrayresize (size_type const size_a)
 Resize a Real Array. More...
 
void attach (FArray const &a)
 Attach Proxy/Argument Array to Const Array of Same Rank. More...
 
void attach (FArray &a)
 Attach Proxy/Argument Array to Array of Same Rank. More...
 
void attach (FArray const &a, int const shift_a)
 Attach Proxy/Argument Array to Const Array. More...
 
void attach (FArray &a, int const shift_a)
 Attach Proxy/Argument Array to Array. More...
 
void attach (Section const &s, int const shift_a)
 Attach Proxy/Argument Array to Const Section. More...
 
void attach (Section &s, int const shift_a)
 Attach Proxy/Argument Array to Section. More...
 
void attach (T const &t, int const shift_a)
 Attach Proxy/Argument Array to Const Value. More...
 
void attach (T &t, int const shift_a)
 Attach Proxy/Argument Array to Value. More...
 
void detach ()
 Detach Proxy/Argument Array. More...
 
void update_to (FArray const &a)
 Update Proxy Array Attachment to Const Array. More...
 
void update_to (FArray &a)
 Update Proxy Array Attachment to Array. More...
 
void swapB (FArray &v)
 Swap. More...
 

Private Types

typedef FArray< TSuper
 
typedef FArray1D< Treal_FArray
 
typedef FArray1P< Tproxy_FArray
 
typedef FArray1A< Targ_FArray
 

Friends

template<typename >
class FArray1
 
template<typename >
class FArray1D
 
template<typename >
class FArray1P
 
template<typename >
class FArray1A
 
template<typename >
class KeyFArray1D
 
bool operator== (FArray1 const &a, FArray1 const &b)
 FArray1 == FArray1. More...
 
bool operator!= (FArray1 const &a, FArray1 const &b)
 FArray1 != FArray1. More...
 
template<typename U >
dot_product (FArray1< U > const &a, FArray1< U > const &b)
 Dot Product. More...
 
template<typename U >
dot (FArray1< U > const &a, FArray1< U > const &b)
 Dot Product. More...
 
template<typename U >
distance (FArray1< U > const &a, FArray1< U > const &b)
 Distance. More...
 
template<typename U >
distance_squared (FArray1< U > const &a, FArray1< U > const &b)
 Distance Squared. More...
 

Additional Inherited Members

- Static Public Attributes inherited from ObjexxFCL::FArray< T >
static size_type const npos
 Unbounded "size". More...
 
static size_type const max_size
 Max array size. More...
 
- Static Protected Member Functions inherited from ObjexxFCL::FArray< T >
static size_type size_of (size_type const s1)
 Array Size Product of Specified Bounded Dimensional Sizes. More...
 
static size_type size_of (size_type const s1, size_type const s2)
 Array Size Product of Specified Bounded Dimensional Sizes. More...
 
static size_type size_of (size_type const s1, size_type const s2, size_type const s3)
 Array Size Product of Specified Bounded Dimensional Sizes. More...
 
static size_type size_of (size_type const s1, size_type const s2, size_type const s3, size_type const s4)
 Array Size Product of Specified Bounded Dimensional Sizes. More...
 
static size_type size_of (size_type const s1, size_type const s2, size_type const s3, size_type const s4, size_type const s5)
 Array Size Product of Specified Bounded Dimensional Sizes. More...
 
static size_type size_of (size_type const s1, size_type const s2, size_type const s3, size_type const s4, size_type const s5, size_type const s6)
 Array Size Product of Specified Bounded Dimensional Sizes. More...
 
static size_type size_of (IR const &I1)
 Array Size Product of Specified Bounded IndexRanges. More...
 
static size_type size_of (IR const &I1, IR const &I2)
 Array Size Product of Specified Bounded IndexRanges. More...
 
static size_type size_of (IR const &I1, IR const &I2, IR const &I3)
 Array Size Product of Specified Bounded IndexRanges. More...
 
static size_type size_of (IR const &I1, IR const &I2, IR const &I3, IR const &I4)
 Array Size Product of Specified Bounded IndexRanges. More...
 
static size_type size_of (IR const &I1, IR const &I2, IR const &I3, IR const &I4, IR const &I5)
 Array Size Product of Specified Bounded IndexRanges. More...
 
static size_type size_of (IR const &I1, IR const &I2, IR const &I3, IR const &I4, IR const &I5, IR const &I6)
 Array Size Product of Specified Bounded IndexRanges. More...
 
- Protected Attributes inherited from ObjexxFCL::FArray< T >
size_type array_size_
 Size of data array. More...
 
Tarray_
 Pointer to data array. More...
 
size_type size_
 Size of active array. More...
 
bool const owner_
 Owner of data array? More...
 
int shift_
 Array shift. More...
 
Tsarray_
 Shifted pointer to data array. More...
 

Detailed Description

template<typename>
class ObjexxFCL::FArray1< typename >

FArray1: Fortran-Compatible 1D Array Abstract Base Class.

Member Typedef Documentation

template<typename >
typedef FArray1A< T > ObjexxFCL::FArray1< typename >::arg_FArray
private
template<typename >
typedef Super::Base ObjexxFCL::FArray1< typename >::Base
template<typename >
typedef Base::const_pointer ObjexxFCL::FArray1< typename >::const_pointer
template<typename >
typedef Base::ConstPointer ObjexxFCL::FArray1< typename >::ConstPointer
template<typename >
typedef Base::Difference ObjexxFCL::FArray1< typename >::Difference
template<typename >
typedef Base::IR ObjexxFCL::FArray1< typename >::IR
template<typename >
typedef void ObjexxFCL::FArray1< typename >::iterator_category
template<typename >
typedef Base::pointer ObjexxFCL::FArray1< typename >::pointer
template<typename >
typedef Base::Pointer ObjexxFCL::FArray1< typename >::Pointer
template<typename >
typedef FArray1P< T > ObjexxFCL::FArray1< typename >::proxy_FArray
private
template<typename >
typedef internal::ProxySentinel ObjexxFCL::FArray1< typename >::ProxySentinel
protected
template<typename >
typedef FArray1D< T > ObjexxFCL::FArray1< typename >::real_FArray
private
template<typename >
typedef Base::reference ObjexxFCL::FArray1< typename >::reference
template<typename >
typedef Base::Reference ObjexxFCL::FArray1< typename >::Reference
template<typename >
typedef Base::Section ObjexxFCL::FArray1< typename >::Section
template<typename >
typedef Base::Size ObjexxFCL::FArray1< typename >::Size
template<typename >
typedef Base::size_type ObjexxFCL::FArray1< typename >::size_type
template<typename >
typedef FArray< T > ObjexxFCL::FArray1< typename >::Super
private
template<typename >
typedef Base::Value ObjexxFCL::FArray1< typename >::Value
template<typename >
typedef Base::value_type ObjexxFCL::FArray1< typename >::value_type

Constructor & Destructor Documentation

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( )
inlineprotected

Default Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( FArray1< typename > const &  a)
inlineprotected

Copy Constructor.

template<typename >
template<typename U >
ObjexxFCL::FArray1< typename >::FArray1 ( FArray1< U > const &  a)
inlineexplicitprotected

Copy Constructor Template.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( size_type const  size_a)
inlineexplicitprotected

Size Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( size_type const  size_a,
InitializerSentinel const &  initialized 
)
inlineprotected

Size + InitializerSentinel Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( ProxySentinel const &  proxy)
inlineprotected

Default Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( FArray1< typename > const &  a,
ProxySentinel const &  proxy 
)
inlineprotected

Copy Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( FArray1< typename > &  a,
ProxySentinel const &  proxy 
)
inlineprotected

Non-Const Copy Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( Base const &  a,
ProxySentinel const &  proxy 
)
inlineprotected

Base Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( Base a,
ProxySentinel const &  proxy 
)
inlineprotected

Non-Const Base Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( Section const &  s,
ProxySentinel const &  proxy 
)
inlineprotected

Section Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( Section s,
ProxySentinel const &  proxy 
)
inlineprotected

Non-Const Section Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( T const &  t,
ProxySentinel const &  proxy 
)
inlineprotected

Value Proxy Constructor.

template<typename >
ObjexxFCL::FArray1< typename >::FArray1 ( T t,
ProxySentinel const &  proxy 
)
inlineprotected

Non-Const Value Proxy Constructor.

template<typename >
virtual ObjexxFCL::FArray1< typename >::~FArray1 ( )
inlinevirtual

Destructor.

Member Function Documentation

template<typename >
Section const ObjexxFCL::FArray1< typename >::a ( int const  i) const
inline

Const Section Starting at array( i )

template<typename >
Section ObjexxFCL::FArray1< typename >::a ( int const  i)
inline

Section Starting at array( i )

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::clear ( )
inlinevirtual
template<typename >
virtual bool ObjexxFCL::FArray1< typename >::contains ( int const  i) const
inlinevirtual
template<typename >
virtual void ObjexxFCL::FArray1< typename >::dimension_assign ( IR const &  I_a)
protectedpure virtual
template<typename >
template<typename U >
bool ObjexxFCL::FArray1< typename >::equal_dimension ( FArray1< U > const &  a) const
inline
template<typename >
virtual IR const& ObjexxFCL::FArray1< typename >::I ( ) const
pure virtual
template<typename >
virtual IR const& ObjexxFCL::FArray1< typename >::I1 ( ) const
pure virtual
template<typename >
size_type ObjexxFCL::FArray1< typename >::index ( int const  i) const
inline

Linear Index.

template<typename >
virtual int ObjexxFCL::FArray1< typename >::l ( ) const
pure virtual
template<typename >
virtual int ObjexxFCL::FArray1< typename >::l1 ( ) const
pure virtual
template<typename >
T ObjexxFCL::FArray1< typename >::length ( ) const
inline

Length.

Referenced by ObjexxFCL::FArray1< T >::normalize().

template<typename >
T ObjexxFCL::FArray1< typename >::length_squared ( ) const
inline

Length Squared.

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::normalize ( )
inline

Normalize to Unit Length.

template<typename >
T const& ObjexxFCL::FArray1< typename >::operator() ( int const  i) const
inline

array( i ) const

template<typename >
T& ObjexxFCL::FArray1< typename >::operator() ( int const  i)
inline

array( i )

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::operator*= ( T const &  t)
inline

*= Value

template<typename >
template<typename U >
FArray1& ObjexxFCL::FArray1< typename >::operator+= ( FArray1< U > const &  a)
inline

+= Array Template

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::operator+= ( T const &  t)
inline

+= Value

template<typename >
template<typename U >
FArray1& ObjexxFCL::FArray1< typename >::operator-= ( FArray1< U > const &  a)
inline

-= Array Template

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::operator-= ( T const &  t)
inline

-= Value

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::operator/= ( T const &  t)
inline

/= Value

Referenced by ObjexxFCL::FArray1< T >::normalize().

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::operator= ( FArray1< typename > const &  a)
inline

Copy Assignment.

template<typename >
template<typename U >
FArray1& ObjexxFCL::FArray1< typename >::operator= ( FArray1< U > const &  a)
inline

Copy Assignment Template.

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::operator= ( T const &  t)
inline

= Value

template<typename >
virtual size_type ObjexxFCL::FArray1< typename >::size1 ( ) const
pure virtual
template<typename >
void ObjexxFCL::FArray1< typename >::swap1DB ( FArray1< typename > &  v)
inlineprotected

Swap.

template<typename >
FArray1& ObjexxFCL::FArray1< typename >::to_default ( )
inlinevirtual

Assign Default Value to all Elements.

Reimplemented from ObjexxFCL::FArray< T >.

template<typename >
virtual int ObjexxFCL::FArray1< typename >::u ( ) const
pure virtual
template<typename >
virtual int ObjexxFCL::FArray1< typename >::u1 ( ) const
pure virtual

Friends And Related Function Documentation

template<typename >
template<typename U >
U distance ( FArray1< U > const &  a,
FArray1< U > const &  b 
)
friend

Distance.

template<typename >
template<typename U >
U distance_squared ( FArray1< U > const &  a,
FArray1< U > const &  b 
)
friend

Distance Squared.

template<typename >
template<typename U >
U dot ( FArray1< U > const &  a,
FArray1< U > const &  b 
)
friend

Dot Product.

template<typename >
template<typename U >
U dot_product ( FArray1< U > const &  a,
FArray1< U > const &  b 
)
friend

Dot Product.

template<typename >
template<typename >
friend class FArray1
friend
template<typename >
template<typename >
friend class FArray1A
friend
template<typename >
template<typename >
friend class FArray1D
friend
template<typename >
template<typename >
friend class FArray1P
friend
template<typename >
template<typename >
friend class KeyFArray1D
friend
template<typename >
bool operator!= ( FArray1< typename > const &  a,
FArray1< typename > const &  b 
)
friend
template<typename >
bool operator== ( FArray1< typename > const &  a,
FArray1< typename > const &  b 
)
friend

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