Open CASCADE Technology
7.3.0
|
#include <Standard_Address.hxx>
#include <Standard_Stream.hxx>
#include <Standard_Transient.hxx>
#include <type_traits>
Data Structures | |
struct | opencascade::is_base_but_not_same< T1, T2, Dummy > |
Trait yielding true if class T1 is base of T2 but not the same. More... | |
struct | opencascade::is_base_but_not_same< T1, T2, typename opencascade::std::enable_if< opencascade::std::is_same< T1, T2 >::value >::type > |
Explicit specialization of is_base_of trait to workaround the requirement of type to be complete when T1 and T2 are the same. More... | |
class | opencascade::handle< T > |
Intrusive smart pointer for use with Standard_Transient class and its descendants. More... | |
Namespaces | |
opencascade | |
Namespace opencascade is intended for low-level template classes and functions. | |
opencascade::std | |
Namespace opencascade::std includes templates from C++11 std namespace used by OCCT classes. These definitions are imported from std namespace, plus (on older compilers) from std::tr1, or implemented by custom code where neither std not std::tr1 provide necessary definitions. | |
Macros | |
#define | Handle(Class) opencascade::handle<Class> |
Define Handle() macro. More... | |
#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>. More... | |
#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) |
Functions | |
template<class T > | |
Standard_Integer | HashCode (const Handle< T > &theHandle, const Standard_Integer theUpper) |
Global method HashCode(), for use in hash maps. More... | |
#define DEFINE_STANDARD_HANDLE | ( | C1, | |
C2 | |||
) | DEFINE_STANDARD_HANDLECLASS(C1,C2,Standard_Transient) |
#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 DEFINE_STANDARD_PHANDLE | ( | C1, | |
C2 | |||
) | DEFINE_STANDARD_HANDLECLASS(C1,C2,Standard_Persistent) |
#define Handle | ( | Class | ) | opencascade::handle<Class> |
Define Handle() macro.
|
inline |
Global method HashCode(), for use in hash maps.