Open CASCADE Technology 7.8.0
Standard_Handle.hxx File Reference

Data Structures

class  opencascade::handle< T >
 Intrusive smart pointer for use with Standard_Transient class and its descendants. More...
 
struct  std::hash< Handle< TheTransientType > >
 

Namespaces

namespace  opencascade
 Namespace opencascade is intended for low-level template classes and functions.
 
namespace  std
 

Macros

#define Handle(Class)   opencascade::handle<Class>
 Define Handle() macro.
 
#define DEFINE_STANDARD_HANDLECLASS(C1, C2, BC)   class C1; typedef Handle(C1) Handle_##C1;
 For compatibility with previous versions of OCCT, define Handle_Class alias for opencascade::handle<Class>.
 
#define DEFINE_STANDARD_HANDLE(C1, C2)   DEFINE_STANDARD_HANDLECLASS(C1,C2,Standard_Transient)
 
#define DEFINE_STANDARD_PHANDLE(C1, C2)   DEFINE_STANDARD_HANDLECLASS(C1,C2,Standard_Persistent)
 

Macro Definition Documentation

◆ DEFINE_STANDARD_HANDLE

#define DEFINE_STANDARD_HANDLE ( C1,
C2 )   DEFINE_STANDARD_HANDLECLASS(C1,C2,Standard_Transient)

◆ DEFINE_STANDARD_HANDLECLASS

#define DEFINE_STANDARD_HANDLECLASS ( C1,
C2,
BC )   class C1; typedef Handle(C1) Handle_##C1;

For compatibility with previous versions of OCCT, define Handle_Class alias for opencascade::handle<Class>.

For other compilers, use simple typedef

◆ DEFINE_STANDARD_PHANDLE

#define DEFINE_STANDARD_PHANDLE ( C1,
C2 )   DEFINE_STANDARD_HANDLECLASS(C1,C2,Standard_Persistent)

◆ Handle

#define Handle ( Class)    opencascade::handle<Class>

Define Handle() macro.