OpendTect  6.6
Public Member Functions | Protected Member Functions | Protected Attributes | Private Types | List of all members
Array4DImpl< T > Class Template Reference

Flat-array implementation of Array4D. More...

Inheritance diagram for Array4DImpl< T >:
[legend]

Public Member Functions

 Array4DImpl (const Array4D< T > &)
 
 Array4DImpl (const Array4DImpl< T > &)
 
 Array4DImpl (const Array4DInfo &)
 
 Array4DImpl (int, int, int, int)
 
 ~Array4DImpl ()
 
bool canSetInfo () const
 
bool canSetStorage () const
 
void copyFrom (const Array4D< T > &)
 
get (int, int, int, int) const
 
T **** get4DData ()
 
const T **** get4DData () const
 
const Array4DInfoinfo () const
 
bool isOK () const
 
Array4DImpl< T > & operator= (const Array4D< T > &ai)
 
Array4DImpl< T > & operator= (const Array4DImpl< T > &ai)
 
void set (int, int, int, int, T)
 
bool setInfo (const ArrayNDInfo &)
 
bool setSize (int, int, int, int)
 
bool setStorage (ValueSeries< T > *vs)
 
- Public Member Functions inherited from Array4D< T >
getND (const int *pos) const
 
void setND (const int *pos, T v)
 
- Public Member Functions inherited from ArrayND< T >
virtual ~ArrayND ()
 
virtual bool canChangeNrDims () const
 
virtual T * get1D (const int *)
 
virtual const T * get1D (const int *) const
 
virtual int get1DDim () const
 
virtual void getAll (T *ptr) const
 
virtual void getAll (ValueSeries< T > &vs) const
 
T * getData ()
 
const T * getData () const
 
int getSize (int dim) const
 
ValueSeries< T > * getStorage ()
 
const ValueSeries< T > * getStorage () const
 
virtual bool isEmpty () const
 
virtual bool isSettable () const
 
int nrDims () const
 
virtual void setAll (T)
 
uint64_t totalSize () const
 
bool validPos (int *pos) const
 

Protected Member Functions

void eraseCache ()
 
const T * getData_ () const
 
const ValueSeries< T > * getStorage_ () const
 
int64_t getStorageSize () const
 
void updateCachePointers ()
 
void updateStorage ()
 
- Protected Member Functions inherited from ArrayImplBase< T >
 ArrayImplBase ()
 
 ~ArrayImplBase ()
 
bool getDataFrom (const ArrayND< T > &templ)
 
bool setStorageInternal (ValueSeries< T > *)
 
bool setStorageNoResize (ValueSeries< T > *)
 
bool storageOK () const
 
bool updateStorageSize ()
 

Protected Attributes

T **** arr4d_
 
TypeSet< T *** > cachestor_
 
Array4DInfoImpl inf_
 
- Protected Attributes inherited from ArrayImplBase< T >
T * ptr_
 
ValueSeries< T > * stor_
 

Private Types

typedef ArrayImplBase< T > base
 

Additional Inherited Members

- Public Types inherited from Array4D< T >
typedef ArrayNDInfo ::dim_idx_type dim_idx_type
 
typedef ArrayNDInfo ::idx_type idx_type
 
typedef ArrayNDInfo ::NDPos NDPos
 
typedef ArrayNDInfo ::NDPosBuf NDPosBuf
 
typedef ArrayNDInfo ::NDSize NDSize
 
typedef ArrayNDInfo ::nr_dims_type nr_dims_type
 
typedef ArrayNDInfo ::offset_type offset_type
 
typedef ArrayNDInfo ::size_type size_type
 
typedef ArrayNDInfo ::total_size_type total_size_type
 

Detailed Description

template<class T>
class Array4DImpl< T >

Flat-array implementation of Array4D.

<>

Member Typedef Documentation

◆ base

template<class T >
typedef ArrayImplBase<T> Array4DImpl< T >::base
private

Constructor & Destructor Documentation

◆ Array4DImpl() [1/4]

template<class T >
Array4DImpl< T >::Array4DImpl ( int  sz0,
int  sz1,
int  sz2,
int  sz3 
)
inline

◆ Array4DImpl() [2/4]

template<class T >
Array4DImpl< T >::Array4DImpl ( const Array4DInfo nsz)
inline

◆ Array4DImpl() [3/4]

template<class T >
Array4DImpl< T >::Array4DImpl ( const Array4D< T > &  templ)
inline

◆ Array4DImpl() [4/4]

template<class T >
Array4DImpl< T >::Array4DImpl ( const Array4DImpl< T > &  templ)
inline

◆ ~Array4DImpl()

template<class T >
Array4DImpl< T >::~Array4DImpl ( )
inline

Member Function Documentation

◆ canSetInfo()

template<class T >
bool Array4DImpl< T >::canSetInfo ( ) const
inlinevirtual

Reimplemented from ArrayND< T >.

◆ canSetStorage()

template<class T >
bool Array4DImpl< T >::canSetStorage ( ) const
inlinevirtual

Reimplemented from ArrayND< T >.

◆ copyFrom()

template<class T >
void Array4DImpl< T >::copyFrom ( const Array4D< T > &  templ)
inline

◆ eraseCache()

template<class T >
void Array4DImpl< T >::eraseCache
inlineprotected

◆ get()

template<class T >
T Array4DImpl< T >::get ( int  p0,
int  p1,
int  p2,
int  p3 
) const
inlinevirtual

Implements Array4D< T >.

◆ get4DData() [1/2]

template<class T >
T**** Array4DImpl< T >::get4DData ( )
inlinevirtual

Reimplemented from Array4D< T >.

◆ get4DData() [2/2]

template<class T >
const T**** Array4DImpl< T >::get4DData ( ) const
inlinevirtual

Reimplemented from Array4D< T >.

◆ getData_()

template<class T >
const T* Array4DImpl< T >::getData_ ( ) const
inlineprotectedvirtual

Reimplemented from ArrayND< T >.

◆ getStorage_()

template<class T >
const ValueSeries<T>* Array4DImpl< T >::getStorage_ ( ) const
inlineprotectedvirtual

Reimplemented from ArrayND< T >.

◆ getStorageSize()

template<class T >
int64_t Array4DImpl< T >::getStorageSize ( ) const
inlineprotectedvirtual

Implements ArrayImplBase< T >.

◆ info()

template<class T >
const Array4DInfo& Array4DImpl< T >::info ( ) const
inlinevirtual

Implements Array4D< T >.

◆ isOK()

template<class T >
bool Array4DImpl< T >::isOK ( ) const
inlinevirtual

Reimplemented from ArrayND< T >.

◆ operator=() [1/2]

template<class T >
Array4DImpl<T>& Array4DImpl< T >::operator= ( const Array4D< T > &  ai)
inline

◆ operator=() [2/2]

template<class T >
Array4DImpl<T>& Array4DImpl< T >::operator= ( const Array4DImpl< T > &  ai)
inline

◆ set()

template<class T >
void Array4DImpl< T >::set ( int  p0,
int  p1,
int  p2,
int  p3,
v 
)
inlinevirtual

Implements Array4D< T >.

◆ setInfo()

template<class T >
bool Array4DImpl< T >::setInfo ( const ArrayNDInfo ni)
inlinevirtual

Reimplemented from ArrayND< T >.

◆ setSize()

template<class T >
bool Array4DImpl< T >::setSize ( int  d0,
int  d1,
int  d2,
int  d3 
)
inline

◆ setStorage()

template<class T >
bool Array4DImpl< T >::setStorage ( ValueSeries< T > *  s)
inlinevirtual

becomes mine. The size must be settable, or I return false.

Reimplemented from ArrayND< T >.

◆ updateCachePointers()

template<class T >
void Array4DImpl< T >::updateCachePointers
inlineprotected

◆ updateStorage()

template<class T >
void Array4DImpl< T >::updateStorage
inlineprotected

Member Data Documentation

◆ arr4d_

template<class T >
T**** Array4DImpl< T >::arr4d_
protected

◆ cachestor_

template<class T >
TypeSet<T***> Array4DImpl< T >::cachestor_
protected

◆ inf_

template<class T >
Array4DInfoImpl Array4DImpl< T >::inf_
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2022