Rosetta
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
ObjexxFCL::KeyFArray4D< T > Class Template Reference

KeyFArray4D: Key-Access Fortran-Compatible 4D Array. More...

#include <KeyFArray4D.hh>

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

Public Types

typedef Super::Base Base
 
typedef Base::Section Section
 
typedef Super::IR SIR
 
typedef DynamicIndexRange 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 FArrayInitializer< T, ObjexxFCL::KeyFArray4DInitializer
 
typedef Initializer::function_type InitializerFunction
 
- Public Types inherited from ObjexxFCL::FArray4< T >
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 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 Types inherited from ObjexxFCL::ObserverMulti
typedef SetWrapper< Observer * > Observers
 

Public Member Functions

 KeyFArray4D ()
 Default Constructor. More...
 
 KeyFArray4D (KeyFArray4D const &a)
 Copy Constructor. More...
 
template<typename U >
 KeyFArray4D (KeyFArray4D< U > const &a)
 Copy Constructor Template. More...
 
template<typename U >
 KeyFArray4D (FArray4< U > const &a)
 Super Constructor Template. More...
 
 KeyFArray4D (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a)
 IndexRange Constructor. More...
 
 KeyFArray4D (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a, T const &t)
 IndexRange + Initializer Value Constructor. More...
 
 KeyFArray4D (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a, InitializerFunction const &function_a)
 IndexRange + Initializer Function Constructor. More...
 
template<typename U >
 KeyFArray4D (FArray4< U > const &a, IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a)
 Super + IndexRange Constructor Template. More...
 
template<typename U >
 KeyFArray4D (FArray4< U > const &a, IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a, T const &t)
 Super + IndexRange + Fill Value Constructor Template. More...
 
 ~KeyFArray4D () override
 Destructor. More...
 
KeyFArray4Doperator= (KeyFArray4D const &a)
 Copy Assignment. More...
 
KeyFArray4Doperator= (Super const &a)
 Super Assignment. More...
 
template<typename U >
KeyFArray4Doperator= (FArray4< U > const &a)
 Super Assignment Template. More...
 
template<typename U >
KeyFArray4Doperator+= (FArray4< U > const &a)
 += Array Template More...
 
template<typename U >
KeyFArray4Doperator-= (FArray4< U > const &a)
 -= Array Template More...
 
KeyFArray4Doperator= (T const &t)
 = Value More...
 
KeyFArray4Doperator+= (T const &t)
 += Value More...
 
KeyFArray4Doperator-= (T const &t)
 -= Value More...
 
KeyFArray4Doperator*= (T const &t)
 *= Value More...
 
KeyFArray4Doperator/= (T const &t)
 /= Value More...
 
template<typename K1 , typename K2 , typename K3 , typename K4 >
T const & operator() (K1 const &i1, K2 const &i2, K3 const &i3, K4 const &i4) const
 array( i1, i2, i3, i4 ) const More...
 
template<typename K1 , typename K2 , typename K3 , typename K4 >
Toperator() (K1 const &i1, K2 const &i2, K3 const &i3, K4 const &i4)
 array( i1, i2, i3, i4 ) More...
 
template<typename K1 , typename K2 , typename K3 , typename K4 >
Section const a (K1 const &i1, K2 const &i2, K3 const &i3, K4 const &i4) const
 Section Starting at array( i1, i2, i3, i4 ) More...
 
template<typename K1 , typename K2 , typename K3 , typename K4 >
size_type index (K1 const &i1, K2 const &i2, K3 const &i3, K4 const &i4) const
 Linear Index. 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...
 
bool dimensions_initialized () const
 Dimensions Initialized? More...
 
template<typename K1 , typename K2 , typename K3 , typename K4 >
bool contains (K1 const &i1, K2 const &i2, K3 const &i3, K4 const &i4) const
 Contains Indexed Element? More...
 
bool initializer_active () const
 Initializer Active? More...
 
IR const & I1 () const
 IndexRange of Dimension 1. More...
 
int l1 () const
 Lower Index of Dimension 1. More...
 
int u1 () const
 Upper Index of Dimension 1. More...
 
IR const & I2 () const
 IndexRange of Dimension 2. More...
 
int l2 () const
 Lower Index of Dimension 2. More...
 
int u2 () const
 Upper Index of Dimension 2. More...
 
IR const & I3 () const
 IndexRange of Dimension 3. More...
 
int l3 () const
 Lower Index of Dimension 3. More...
 
int u3 () const
 Upper Index of Dimension 3. More...
 
IR const & I4 () const
 IndexRange of Dimension 4. More...
 
int l4 () const
 Lower Index of Dimension 4. More...
 
int u4 () const
 Upper Index of Dimension 4. More...
 
size_type size4 () const
 Size of Dimension 4. More...
 
KeyFArray4Dclear ()
 Clear. More...
 
KeyFArray4Ddimension (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a)
 Dimension by IndexRange. More...
 
KeyFArray4Ddimension (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a, T const &t)
 Dimension by IndexRange + Initializer Value. More...
 
KeyFArray4Ddimension (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a, InitializerFunction const &function_a)
 Dimension by IndexRange + Initializer Function. More...
 
template<typename U >
KeyFArray4Ddimension (FArray4< U > const &a)
 Dimension by Array Template. More...
 
template<typename U >
KeyFArray4Ddimension (FArray4< U > const &a, T const &t)
 Dimension by Array + Initializer Value Template. More...
 
template<typename U >
KeyFArray4Ddimension (FArray4< U > const &a, InitializerFunction const &function_a)
 Dimension by Array + Initializer Function Template. More...
 
KeyFArray4Dredimension (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a)
 Data-Preserving Redimension by IndexRange. More...
 
KeyFArray4Dredimension (IR const &I1_a, IR const &I2_a, IR const &I3_a, IR const &I4_a, T const &t)
 Data-Preserving Redimension by IndexRange + Fill Value. More...
 
template<typename U >
KeyFArray4Dredimension (FArray4< U > const &a)
 Data-Preserving Redimension by Array Template. More...
 
template<typename U >
KeyFArray4Dredimension (FArray4< U > const &a, T const &t)
 Data-Preserving Redimension by Array + Fill Value Template. More...
 
KeyFArray4Dinitializer (T const &t)
 Set Initializer Value. More...
 
KeyFArray4Dinitializer (InitializerFunction const &function_a)
 Set Initializer Function. More...
 
KeyFArray4Dinitializer_clear ()
 Clear Initializer. More...
 
KeyFArray4Dinitialize ()
 Initialize. More...
 
KeyFArray4Dswap (KeyFArray4D &v)
 Swap. More...
 
void update () override
 Update. More...
 
void destructed (Subject const &) override
 Update for Destruction of a Subject. More...
 
void shift_set (int const shift_a)
 Shift Setup. More...
 
- Public Member Functions inherited from ObjexxFCL::FArray4< T >
 ~FArray4 () override
 Destructor. More...
 
FArray4operator= (FArray4 const &a)
 Copy Assignment. More...
 
template<typename U >
FArray4operator= (FArray4< U > const &a)
 Copy Assignment Template. More...
 
template<typename U >
FArray4operator+= (FArray4< U > const &a)
 += Array Template More...
 
template<typename U >
FArray4operator-= (FArray4< U > const &a)
 -= Array Template More...
 
FArray4operator= (T const &t)
 = Value More...
 
FArray4operator+= (T const &t)
 += Value More...
 
FArray4operator-= (T const &t)
 -= Value More...
 
FArray4operator*= (T const &t)
 *= Value More...
 
FArray4operator/= (T const &t)
 /= Value More...
 
T const & operator() (int const i1, int const i2, int const i3, int const i4) const
 array( i1, i2, i3, i4 ) const More...
 
Toperator() (int const i1, int const i2, int const i3, int const i4)
 array( i1, i2, i3, i4 ) More...
 
Section const a (int const i1, int const i2, int const i3, int const i4) const
 Const Section Starting at array( i1, i2, i3, i4 ) More...
 
Section a (int const i1, int const i2, int const i3, int const i4)
 Section Starting at array( i1, i2, i3, i4 ) More...
 
size_type index (int const i1, int const i2, int const i3, int const i4) const
 Linear Index. More...
 
virtual bool contains (int const i1, int const i2, int const i3, int const i4) const
 Contains Indexed Element? More...
 
template<typename U >
bool equal_dimension (FArray4< U > const &a) const
 Equal Dimension? More...
 
size_type size1 () const
 Size of Dimension 1. More...
 
size_type size2 () const
 Size of Dimension 2. More...
 
size_type size3 () const
 Size of Dimension 3. More...
 
FArray4to_default () override
 Assign Default Value to all Elements. More...
 
virtual bool dimensions_initialized () const=0
 Dimensions Initialized? 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...
 
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...
 
- Public Member Functions inherited from ObjexxFCL::ObserverMulti
 ~ObserverMulti () override
 Destructor. More...
 
void insert_observer (Observer &observer) const override
 Insert an Observer. More...
 
void remove_observer (Observer &observer) const override
 Remove an Observer. More...
 
bool has_observer () const override
 Has At Least One Observer? More...
 
Observers const * observers_p () const
 Observers Pointer. More...
 
Observers const & observers () const
 Observers. More...
 
void notify_destructed () const
 Notify Observers That This Subject is Being Destructed. More...
 
- Public Member Functions inherited from ObjexxFCL::Observer
virtual ~Observer ()
 Destructor. More...
 
void notify () const
 Notify Observers That This Subject Has Changed. More...
 
bool acyclic (Observer &) const
 Acyclic After Adding an Observer of This Subject? More...
 

Static Public Member Functions

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...
 

Public Attributes

Tarray_
 Pointer to data array. More...
 
size_type array_size_
 Size of data array. More...
 
Tsarray_
 Shifted pointer to data array. More...
 
int shift_
 Array shift. More...
 
size_type size_
 Size of active array. More...
 
- Public Attributes inherited from ObjexxFCL::FArray4< T >
Tarray_
 Pointer to data array. More...
 
size_type array_size_
 Size of data array. More...
 
Tsarray_
 Shifted pointer to data array. More...
 
int shift_
 Array shift. More...
 

Protected Member Functions

void dimension_assign (SIR const &I1_a, SIR const &I2_a, SIR const &I3_a, SIR const &I4_a)
 Dimension by IndexRanges. More...
 
- Protected Member Functions inherited from ObjexxFCL::FArray4< T >
 FArray4 ()
 Default Constructor. More...
 
 FArray4 (FArray4 const &a)
 Copy Constructor. More...
 
template<typename U >
 FArray4 (FArray4< U > const &a)
 Copy Constructor Template. More...
 
 FArray4 (size_type const size_a)
 Size Constructor. More...
 
 FArray4 (size_type const size_a, InitializerSentinel const &initialized)
 Size + InitializerSentinel Constructor. More...
 
 FArray4 (ProxySentinel const &proxy)
 Default Proxy Constructor. More...
 
 FArray4 (FArray4 const &a, ProxySentinel const &proxy)
 Copy Proxy Constructor. More...
 
 FArray4 (FArray4 &a, ProxySentinel const &proxy)
 Non-Const Copy Proxy Constructor. More...
 
 FArray4 (Base const &a, ProxySentinel const &proxy)
 Base Proxy Constructor. More...
 
 FArray4 (Base &a, ProxySentinel const &proxy)
 Non-Const Base Proxy Constructor. More...
 
 FArray4 (Section const &s, ProxySentinel const &proxy)
 Section Proxy Constructor. More...
 
 FArray4 (Section &s, ProxySentinel const &proxy)
 Non-Const Section Proxy Constructor. More...
 
 FArray4 (T const &t, ProxySentinel const &proxy)
 Value Proxy Constructor. More...
 
 FArray4 (T &t, ProxySentinel const &proxy)
 Non-Const Value Proxy Constructor. More...
 
void swap4DB (FArray4 &v)
 Swap. More...
 
- Protected Member Functions inherited from ObjexxFCL::FArray< T >
 FArray ()
 Default Constructor. More...
 
 FArray (FArray const &a)
 Copy Constructor. More...
 
 FArray (FArray const &a, T const &v)
 Filled Copy Constructor - use the other data from the array, but fill with the given value. More...
 
template<typename U >
 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...
 
template<typename U >
void operator= (FArray< U > const &a)
 Copy Assignment Template. More...
 
template<typename U >
void operator+= (FArray< U > const &a)
 += Array Template More...
 
template<typename U >
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...
 
- Protected Member Functions inherited from ObjexxFCL::ObserverMulti
 ObserverMulti ()
 Default Constructor. More...
 
 ObserverMulti (ObserverMulti const &)
 Copy Constructor. More...
 
ObserverMultioperator= (ObserverMulti const &)
 Copy Assignment. More...
 
- Protected Member Functions inherited from ObjexxFCL::Observer
 Observer ()
 Default Constructor. More...
 
 Observer (Observer const &)
 Copy Constructor. More...
 
Observeroperator= (Observer const &)
 Copy Assignment. More...
 

Private Types

typedef FArray4< TSuper
 
typedef internal::InitializerSentinel InitializerSentinel
 

Private Member Functions

void setup_real ()
 Setup for IndexRange Constructor. More...
 
void dimension_real ()
 Dimension by Current IndexRanges. More...
 
void insert_as_observer ()
 Insert as Observer of the IndexRanges. More...
 

Private Attributes

IR I1_
 Dimension 1 index range. More...
 
IR I2_
 Dimension 2 index range. More...
 
IR I3_
 Dimension 3 index range. More...
 
IR I4_
 Dimension 4 index range. More...
 
Initializer initializer_
 Array initializer. More...
 

Friends

template<typename >
class KeyFArray4D
 
class FArray4D< T >
 
class FArray4P< T >
 
class FArray4A< T >
 
void swap (KeyFArray4D &a, KeyFArray4D &b)
 Swap. More...
 
KeyFArray4D operator- (KeyFArray4D const &a)
 -Array More...
 
KeyFArray4D operator+ (KeyFArray4D const &a, KeyFArray4D const &b)
 Array + Array. More...
 
KeyFArray4D operator- (KeyFArray4D const &a, KeyFArray4D const &b)
 Array - Array. More...
 
KeyFArray4D operator+ (KeyFArray4D const &a, T const &t)
 Array + Value. More...
 
KeyFArray4D operator+ (T const &t, KeyFArray4D const &a)
 Value + Array. More...
 
KeyFArray4D operator- (KeyFArray4D const &a, T const &t)
 Array - Value. More...
 
KeyFArray4D operator- (T const &t, KeyFArray4D const &a)
 Value - Array. More...
 
KeyFArray4D operator* (KeyFArray4D const &a, T const &t)
 Array * Value. More...
 
KeyFArray4D operator* (T const &t, KeyFArray4D const &a)
 Value * Array. More...
 
KeyFArray4D operator/ (KeyFArray4D const &a, T const &t)
 Array / Value. More...
 

Additional Inherited Members

- Static Public Attributes inherited from ObjexxFCL::FArray4< T >
static size_type const npos
 Unbounded "size". More...
 
- Static Public Attributes inherited from ObjexxFCL::FArray< T >
static size_type const npos = static_cast< size_type >( -1 )
 Unbounded "size". More...
 
static size_type const max_size = npos - static_cast< size_type >( 1 )
 Max array size. More...
 
- Protected Types inherited from ObjexxFCL::FArray4< T >
typedef internal::InitializerSentinel InitializerSentinel
 
typedef internal::ProxySentinel ProxySentinel
 
- Protected Types inherited from ObjexxFCL::FArray< T >
typedef internal::InitializerSentinel InitializerSentinel
 
typedef internal::ProxySentinel ProxySentinel
 
- 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::FArray4< T >
size_type s1_
 Dimension 1 size. More...
 
size_type s2_
 Dimension 2 size. More...
 
size_type s3_
 Dimension 3 size. 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 T>
class ObjexxFCL::KeyFArray4D< T >

KeyFArray4D: Key-Access Fortran-Compatible 4D Array.

Member Typedef Documentation

◆ Base

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

◆ const_pointer

template<typename T >
typedef Base::const_pointer ObjexxFCL::KeyFArray4D< T >::const_pointer

◆ const_reference

◆ ConstPointer

template<typename T >
typedef Base::ConstPointer ObjexxFCL::KeyFArray4D< T >::ConstPointer

◆ ConstReference

template<typename T >
typedef Base::ConstReference ObjexxFCL::KeyFArray4D< T >::ConstReference

◆ Difference

template<typename T >
typedef Base::Difference ObjexxFCL::KeyFArray4D< T >::Difference

◆ difference_type

◆ Initializer

◆ InitializerFunction

◆ InitializerSentinel

◆ IR

template<typename T >
typedef DynamicIndexRange ObjexxFCL::KeyFArray4D< T >::IR

◆ pointer

template<typename T >
typedef Base::pointer ObjexxFCL::KeyFArray4D< T >::pointer

◆ Pointer

template<typename T >
typedef Base::Pointer ObjexxFCL::KeyFArray4D< T >::Pointer

◆ reference

template<typename T >
typedef Base::reference ObjexxFCL::KeyFArray4D< T >::reference

◆ Reference

template<typename T >
typedef Base::Reference ObjexxFCL::KeyFArray4D< T >::Reference

◆ Section

template<typename T >
typedef Base::Section ObjexxFCL::KeyFArray4D< T >::Section

◆ SIR

template<typename T >
typedef Super::IR ObjexxFCL::KeyFArray4D< T >::SIR

◆ Size

template<typename T >
typedef Base::Size ObjexxFCL::KeyFArray4D< T >::Size

◆ size_type

template<typename T >
typedef Base::size_type ObjexxFCL::KeyFArray4D< T >::size_type

◆ Super

template<typename T >
typedef FArray4< T > ObjexxFCL::KeyFArray4D< T >::Super
private

◆ Value

template<typename T >
typedef Base::Value ObjexxFCL::KeyFArray4D< T >::Value

◆ value_type

template<typename T >
typedef Base::value_type ObjexxFCL::KeyFArray4D< T >::value_type

Constructor & Destructor Documentation

◆ KeyFArray4D() [1/9]

template<typename T >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( )
inline

Default Constructor.

References ObjexxFCL::KeyFArray4D< T >::insert_as_observer().

◆ KeyFArray4D() [2/9]

template<typename T >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( KeyFArray4D< T > const &  a)
inline

◆ KeyFArray4D() [3/9]

template<typename T >
template<typename U >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( KeyFArray4D< U > const &  a)
inlineexplicit

Copy Constructor Template.

References ObjexxFCL::KeyFArray4D< T >::insert_as_observer().

◆ KeyFArray4D() [4/9]

template<typename T >
template<typename U >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( FArray4< U > const &  a)
inlineexplicit

Super Constructor Template.

References ObjexxFCL::KeyFArray4D< T >::insert_as_observer().

◆ KeyFArray4D() [5/9]

template<typename T >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a 
)
inline

◆ KeyFArray4D() [6/9]

template<typename T >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a,
T const &  t 
)
inline

◆ KeyFArray4D() [7/9]

template<typename T >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a,
InitializerFunction const &  function_a 
)
inline

◆ KeyFArray4D() [8/9]

template<typename T >
template<typename U >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( FArray4< U > const &  a,
IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a 
)
inline

◆ KeyFArray4D() [9/9]

template<typename T >
template<typename U >
ObjexxFCL::KeyFArray4D< T >::KeyFArray4D ( FArray4< U > const &  a,
IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a,
T const &  t 
)
inline

◆ ~KeyFArray4D()

template<typename T >
ObjexxFCL::KeyFArray4D< T >::~KeyFArray4D ( )
inlineoverride

Destructor.

Member Function Documentation

◆ a()

template<typename T >
template<typename K1 , typename K2 , typename K3 , typename K4 >
Section const ObjexxFCL::KeyFArray4D< T >::a ( K1 const &  i1,
K2 const &  i2,
K3 const &  i3,
K4 const &  i4 
) const
inline

◆ clear()

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::clear ( )
inlinevirtual

◆ contains()

template<typename T >
template<typename K1 , typename K2 , typename K3 , typename K4 >
bool ObjexxFCL::KeyFArray4D< T >::contains ( K1 const &  i1,
K2 const &  i2,
K3 const &  i3,
K4 const &  i4 
) const
inline

◆ destructed()

template<typename T >
void ObjexxFCL::KeyFArray4D< T >::destructed ( Subject const &  )
inlineoverridevirtual

Update for Destruction of a Subject.

Implements ObjexxFCL::Observer.

◆ dimension() [1/6]

template<typename T >
template<typename U >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::dimension ( FArray4< U > const &  a)
inline

◆ dimension() [2/6]

template<typename T >
template<typename U >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::dimension ( FArray4< U > const &  a,
InitializerFunction const &  function_a 
)
inline

◆ dimension() [3/6]

template<typename T >
template<typename U >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::dimension ( FArray4< U > const &  a,
T const &  t 
)
inline

◆ dimension() [4/6]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::dimension ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a 
)
inline

◆ dimension() [5/6]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::dimension ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a,
InitializerFunction const &  function_a 
)
inline

◆ dimension() [6/6]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::dimension ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a,
T const &  t 
)
inline

◆ dimension_assign()

template<typename T >
void ObjexxFCL::KeyFArray4D< T >::dimension_assign ( SIR const &  I1_a,
SIR const &  I2_a,
SIR const &  I3_a,
SIR const &  I4_a 
)
inlineprotectedvirtual

◆ dimension_real()

template<typename T >
void ObjexxFCL::KeyFArray4D< T >::dimension_real ( )
inlineprivate

◆ dimensions_initialized()

template<typename T >
bool ObjexxFCL::KeyFArray4D< T >::dimensions_initialized ( ) const
inlinevirtual

◆ I1()

template<typename T >
IR const& ObjexxFCL::KeyFArray4D< T >::I1 ( ) const
inlinevirtual

◆ I2()

template<typename T >
IR const& ObjexxFCL::KeyFArray4D< T >::I2 ( ) const
inlinevirtual

◆ I3()

template<typename T >
IR const& ObjexxFCL::KeyFArray4D< T >::I3 ( ) const
inlinevirtual

◆ I4()

template<typename T >
IR const& ObjexxFCL::KeyFArray4D< T >::I4 ( ) const
inlinevirtual

◆ index()

template<typename T >
template<typename K1 , typename K2 , typename K3 , typename K4 >
size_type ObjexxFCL::KeyFArray4D< T >::index ( K1 const &  i1,
K2 const &  i2,
K3 const &  i3,
K4 const &  i4 
) const
inline

◆ initialize()

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::initialize ( )
inline

◆ initializer() [1/2]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::initializer ( InitializerFunction const &  function_a)
inline

Set Initializer Function.

References ObjexxFCL::KeyFArray4D< T >::initializer_.

◆ initializer() [2/2]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::initializer ( T const &  t)
inline

Set Initializer Value.

References ObjexxFCL::KeyFArray4D< T >::initializer_, and predPRE::t.

◆ initializer_active()

template<typename T >
bool ObjexxFCL::KeyFArray4D< T >::initializer_active ( ) const
inlinevirtual

◆ initializer_clear()

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::initializer_clear ( )
inline

◆ insert_as_observer()

template<typename T >
void ObjexxFCL::KeyFArray4D< T >::insert_as_observer ( )
inlineprivate

◆ l1()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::l1 ( ) const
inlinevirtual

◆ l2()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::l2 ( ) const
inlinevirtual

◆ l3()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::l3 ( ) const
inlinevirtual

◆ l4()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::l4 ( ) const
inlinevirtual

◆ operator()() [1/2]

template<typename T >
template<typename K1 , typename K2 , typename K3 , typename K4 >
T& ObjexxFCL::KeyFArray4D< T >::operator() ( K1 const &  i1,
K2 const &  i2,
K3 const &  i3,
K4 const &  i4 
)
inline

◆ operator()() [2/2]

template<typename T >
template<typename K1 , typename K2 , typename K3 , typename K4 >
T const& ObjexxFCL::KeyFArray4D< T >::operator() ( K1 const &  i1,
K2 const &  i2,
K3 const &  i3,
K4 const &  i4 
) const
inline

◆ operator*=()

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

◆ operator+=() [1/2]

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

◆ operator+=() [2/2]

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

◆ operator-=() [1/2]

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

◆ operator-=() [2/2]

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

◆ operator/=()

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

◆ operator=() [1/4]

template<typename T >
template<typename U >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::operator= ( FArray4< U > const &  a)
inline

◆ operator=() [2/4]

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

◆ operator=() [3/4]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::operator= ( Super const &  a)
inline

◆ operator=() [4/4]

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

◆ operator[]() [1/2]

template<typename T >
T& ObjexxFCL::KeyFArray4D< T >::operator[] ( size_type const  i)
inline

◆ operator[]() [2/2]

template<typename T >
T const& ObjexxFCL::KeyFArray4D< T >::operator[] ( size_type const  i) const
inline

◆ redimension() [1/4]

template<typename T >
template<typename U >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::redimension ( FArray4< U > const &  a)
inline

Data-Preserving Redimension by Array Template.

References ObjexxFCL::KeyFArray4D< T >::a(), and ObjexxFCL::KeyFArray4D< T >::KeyFArray4D.

◆ redimension() [2/4]

template<typename T >
template<typename U >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::redimension ( FArray4< U > const &  a,
T const &  t 
)
inline

Data-Preserving Redimension by Array + Fill Value Template.

References ObjexxFCL::KeyFArray4D< T >::a(), ObjexxFCL::KeyFArray4D< T >::KeyFArray4D, and predPRE::t.

◆ redimension() [3/4]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::redimension ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a 
)
inline

Data-Preserving Redimension by IndexRange.

References ObjexxFCL::KeyFArray4D< T >::KeyFArray4D.

◆ redimension() [4/4]

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::redimension ( IR const &  I1_a,
IR const &  I2_a,
IR const &  I3_a,
IR const &  I4_a,
T const &  t 
)
inline

Data-Preserving Redimension by IndexRange + Fill Value.

References ObjexxFCL::KeyFArray4D< T >::KeyFArray4D, and predPRE::t.

◆ setup_real()

template<typename T >
void ObjexxFCL::KeyFArray4D< T >::setup_real ( )
inlineprivate

◆ shift_set()

template<typename T >
void ObjexxFCL::FArray< T >::shift_set
inline

◆ size4()

template<typename T >
size_type ObjexxFCL::KeyFArray4D< T >::size4 ( ) const
inlinevirtual

◆ size_of() [1/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded IndexRanges.

◆ size_of() [2/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded IndexRanges.

◆ size_of() [3/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded IndexRanges.

◆ size_of() [4/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded IndexRanges.

◆ size_of() [5/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded IndexRanges.

◆ size_of() [6/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded IndexRanges.

◆ size_of() [7/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded Dimensional Sizes.

Referenced by ObjexxFCL::KeyFArray4D< T >::dimension_real().

◆ size_of() [8/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded Dimensional Sizes.

◆ size_of() [9/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded Dimensional Sizes.

◆ size_of() [10/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded Dimensional Sizes.

◆ size_of() [11/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded Dimensional Sizes.

◆ size_of() [12/12]

template<typename T >
static size_type ObjexxFCL::FArray< T >::size_of
inlinestatic

Array Size Product of Specified Bounded Dimensional Sizes.

◆ swap()

template<typename T >
KeyFArray4D& ObjexxFCL::KeyFArray4D< T >::swap ( KeyFArray4D< T > &  v)
inline

◆ u1()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::u1 ( ) const
inlinevirtual

◆ u2()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::u2 ( ) const
inlinevirtual

◆ u3()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::u3 ( ) const
inlinevirtual

◆ u4()

template<typename T >
int ObjexxFCL::KeyFArray4D< T >::u4 ( ) const
inlinevirtual

◆ update()

template<typename T >
void ObjexxFCL::KeyFArray4D< T >::update ( )
inlineoverridevirtual

Friends And Related Function Documentation

◆ FArray4A< T >

template<typename T >
friend class FArray4A< T >
friend

◆ FArray4D< T >

template<typename T >
friend class FArray4D< T >
friend

◆ FArray4P< T >

template<typename T >
friend class FArray4P< T >
friend

◆ KeyFArray4D

template<typename T >
template<typename >
friend class KeyFArray4D
friend

◆ operator* [1/2]

template<typename T >
KeyFArray4D operator* ( KeyFArray4D< T > const &  a,
T const &  t 
)
friend

Array * Value.

◆ operator* [2/2]

template<typename T >
KeyFArray4D operator* ( T const &  t,
KeyFArray4D< T > const &  a 
)
friend

Value * Array.

◆ operator+ [1/3]

template<typename T >
KeyFArray4D operator+ ( KeyFArray4D< T > const &  a,
KeyFArray4D< T > const &  b 
)
friend

Array + Array.

◆ operator+ [2/3]

template<typename T >
KeyFArray4D operator+ ( KeyFArray4D< T > const &  a,
T const &  t 
)
friend

Array + Value.

◆ operator+ [3/3]

template<typename T >
KeyFArray4D operator+ ( T const &  t,
KeyFArray4D< T > const &  a 
)
friend

Value + Array.

◆ operator- [1/4]

template<typename T >
KeyFArray4D operator- ( KeyFArray4D< T > const &  a)
friend

-Array

◆ operator- [2/4]

template<typename T >
KeyFArray4D operator- ( KeyFArray4D< T > const &  a,
KeyFArray4D< T > const &  b 
)
friend

Array - Array.

◆ operator- [3/4]

template<typename T >
KeyFArray4D operator- ( KeyFArray4D< T > const &  a,
T const &  t 
)
friend

Array - Value.

◆ operator- [4/4]

template<typename T >
KeyFArray4D operator- ( T const &  t,
KeyFArray4D< T > const &  a 
)
friend

Value - Array.

◆ operator/

template<typename T >
KeyFArray4D operator/ ( KeyFArray4D< T > const &  a,
T const &  t 
)
friend

Array / Value.

◆ swap

template<typename T >
void swap ( KeyFArray4D< T > &  a,
KeyFArray4D< T > &  b 
)
friend

Swap.

Member Data Documentation

◆ array_

template<typename T >
T* ObjexxFCL::FArray< T >::array_

◆ array_size_

template<typename T >
size_type ObjexxFCL::FArray< T >::array_size_

Size of data array.

Referenced by ObjexxFCL::KeyFArray4D< T >::a().

◆ I1_

template<typename T >
IR ObjexxFCL::KeyFArray4D< T >::I1_
private

◆ I2_

template<typename T >
IR ObjexxFCL::KeyFArray4D< T >::I2_
private

◆ I3_

template<typename T >
IR ObjexxFCL::KeyFArray4D< T >::I3_
private

◆ I4_

template<typename T >
IR ObjexxFCL::KeyFArray4D< T >::I4_
private

◆ initializer_

template<typename T >
Initializer ObjexxFCL::KeyFArray4D< T >::initializer_
private

◆ sarray_

template<typename T >
T* ObjexxFCL::FArray< T >::sarray_

Shifted pointer to data array.

Referenced by ObjexxFCL::KeyFArray4D< T >::operator()().

◆ shift_

template<typename T >
int ObjexxFCL::FArray< T >::shift_

◆ size_

template<typename T >
size_type ObjexxFCL::FArray< T >::size_

Size of active array.

Referenced by ObjexxFCL::KeyFArray4D< T >::operator[]().


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