Version: 9.12.0
SMDS_Ptr< T > Class Template Reference

Replace "typedef SMDS_Position* SMDS_PositionPtr" by a smart pointer allowing implicit casting to derived types; e.g. More...

#include <SMDS_Position.hxx>

Inheritance diagram for SMDS_Ptr< T >:

Public Member Functions

 SMDS_Ptr (T *pos=(T *) 0, bool isOwner=true)
 
 SMDS_Ptr (const SMDS_Ptr &from)
 
SMDS_Ptroperator= (const SMDS_Ptr &from)
 
template<class Y >
 SMDS_Ptr (const SMDS_Ptr< Y > &base)
 
 ~SMDS_Ptr ()
 
 operator bool () const
 
bool IsOwner () const
 
T * operator-> ()
 STL member. More...
 

Data Fields

ptr
 STL member. More...
 

Private Attributes

bool myIsOwner
 

Detailed Description

template<class T>
class SMDS_Ptr< T >

Replace "typedef SMDS_Position* SMDS_PositionPtr" by a smart pointer allowing implicit casting to derived types; e.g.

if ( SMDS_FacePositionPtr fPos = node->GetPosition() ) fPos->SetUParameter(0);

Constructor & Destructor Documentation

◆ SMDS_Ptr() [1/3]

template<class T >
SMDS_Ptr< T >::SMDS_Ptr ( T *  pos = (T *) 0,
bool  isOwner = true 
)

◆ SMDS_Ptr() [2/3]

template<class T >
SMDS_Ptr< T >::SMDS_Ptr ( const SMDS_Ptr< T > &  from)

◆ SMDS_Ptr() [3/3]

template<class T >
template<class Y >
SMDS_Ptr< T >::SMDS_Ptr ( const SMDS_Ptr< Y > &  base)

◆ ~SMDS_Ptr()

template<class T >
SMDS_Ptr< T >::~SMDS_Ptr ( )

Member Function Documentation

◆ IsOwner()

template<class T >
bool SMDS_Ptr< T >::IsOwner ( ) const

◆ operator bool()

template<class T >
SMDS_Ptr< T >::operator bool ( ) const

◆ operator->()

T* std::unique_ptr< T >::operator->
inherited

STL member.

◆ operator=()

template<class T >
SMDS_Ptr& SMDS_Ptr< T >::operator= ( const SMDS_Ptr< T > &  from)

Field Documentation

◆ myIsOwner

template<class T >
bool SMDS_Ptr< T >::myIsOwner
private

◆ ptr

T std::unique_ptr< T >::ptr
inherited

STL member.