OpendTect  7.0
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
ArrPtrMan< T > Class Template Reference
Inheritance diagram for ArrPtrMan< T >:
[legend]

Public Member Functions

 ArrPtrMan (ArrPtrMan< T > &&)
 
 ArrPtrMan (T *=nullptr)
 
ArrPtrMan< T > & operator= (T *)
 
void setSize (std::int64_t size)
 
- Public Member Functions inherited from NonConstPtrManBase< T >
T * getNonConstPtr () const
 
 operator const T * () const
 
 operator T* ()
 
T & operator* ()
 
const T & operator* () const
 
T * operator-> ()
 
const T * operator-> () const
 
T * ptr ()
 
const T * ptr () const
 
- Public Member Functions inherited from PtrManBase< T >
T * createIfNull (PointerCreator=createSingleObject< T >)
 
void erase ()
 
bool operator! () const
 
T * release ()
 Returns pointer. I won't take care of it any longer. More...
 
T * set (T *p, bool doerase=true)
 Returns old pointer if not erased. More...
 
bool setIfNull (T *p)
 
bool setIfNull (T *p, bool takeover)
 

Private Member Functions

 ArrPtrMan (const ArrPtrMan< T > &)=delete
 
ArrPtrMan< T > & operator= (const ArrPtrMan< T > &)=delete
 

Static Private Member Functions

static void deleteFunc (T *p)
 

Private Attributes

std::int64_t size_
 

Additional Inherited Members

- Public Types inherited from PtrManBase< T >
typedef T *(* PointerCreator) ()
 
- Protected Types inherited from NonConstPtrManBase< T >
typedef void(* PtrFunc) (T *)
 
- Protected Types inherited from PtrManBase< T >
typedef void(* PtrFunc) (T *)
 
- Protected Member Functions inherited from NonConstPtrManBase< T >
 NonConstPtrManBase (PtrFunc setfunc, PtrFunc deletor, T *p)
 
- Protected Member Functions inherited from PtrManBase< T >
 PtrManBase (PtrFunc setfunc, PtrFunc deletor, T *)
 
virtual ~PtrManBase ()
 
- Protected Attributes inherited from PtrManBase< T >
PtrFunc deletefunc_
 
Threads::AtomicPointer< T > ptr_
 
PtrFunc setfunc_
 

Detailed Description

template<class T>
class ArrPtrMan< T >

Smart pointer for pointers allocated as arrays.

<>

Constructor & Destructor Documentation

◆ ArrPtrMan() [1/3]

template<class T >
ArrPtrMan< T >::ArrPtrMan ( T *  p = nullptr)
inline

◆ ArrPtrMan() [2/3]

template<class T >
ArrPtrMan< T >::ArrPtrMan ( ArrPtrMan< T > &&  p)
inline

◆ ArrPtrMan() [3/3]

template<class T >
ArrPtrMan< T >::ArrPtrMan ( const ArrPtrMan< T > &  )
privatedelete

Member Function Documentation

◆ deleteFunc()

template<class T >
static void ArrPtrMan< T >::deleteFunc ( T *  p)
inlinestaticprivate

◆ operator=() [1/2]

template<class T >
ArrPtrMan<T>& ArrPtrMan< T >::operator= ( const ArrPtrMan< T > &  )
privatedelete

◆ operator=() [2/2]

template<class T >
ArrPtrMan< T > & ArrPtrMan< T >::operator= ( T *  p)
inline

◆ setSize()

template<class T >
void ArrPtrMan< T >::setSize ( std::int64_t  size)
inline

Member Data Documentation

◆ size_

template<class T >
std::int64_t ArrPtrMan< T >::size_
private

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