 |
VTK
9.6.20260621
|
Go to the documentation of this file.
11#ifndef vtkWrappingHints_h
12#define vtkWrappingHints_h
21#ifdef VTK_WRAP_HINTS_USE_CLANG_ANNOTATE
22#define VTK_DEFINE_WRAP_HINT(name) __attribute__((annotate(#name)))
23#define VTK_DEFINE_WRAP_HINT_ARGS(name, ...) __attribute__((annotate(#name "(" #__VA_ARGS__ ")")))
25#define VTK_DEFINE_WRAP_HINT(name) [[name]]
26#define VTK_DEFINE_WRAP_HINT_ARGS(name, ...) [[name(__VA_ARGS__)]]
30#define VTK_WRAP_HINTS_DEFINED
32#define VTK_WRAPEXCLUDE VTK_DEFINE_WRAP_HINT(vtk::wrapexclude)
35#define VTK_WRAPEXCLUDE_JAVASCRIPT VTK_WRAPEXCLUDE
37#define VTK_WRAPEXCLUDE_JAVASCRIPT
40#define VTK_PROPEXCLUDE VTK_DEFINE_WRAP_HINT(vtk::propexclude)
42#define VTK_NEWINSTANCE VTK_DEFINE_WRAP_HINT(vtk::newinstance)
44#define VTK_ZEROCOPY VTK_DEFINE_WRAP_HINT(vtk::zerocopy)
46#define VTK_FILEPATH VTK_DEFINE_WRAP_HINT(vtk::filepath)
48#define VTK_UNBLOCKTHREADS VTK_DEFINE_WRAP_HINT(vtk::unblockthreads)
50#define VTK_EXPECTS(x) VTK_DEFINE_WRAP_HINT_ARGS(vtk::expects, x)
52#define VTK_SIZEHINT(...) VTK_DEFINE_WRAP_HINT_ARGS(vtk::sizehint, __VA_ARGS__)
54#define VTK_MARSHALAUTO VTK_DEFINE_WRAP_HINT(vtk::marshalauto)
56#define VTK_MARSHALMANUAL VTK_DEFINE_WRAP_HINT(vtk::marshalmanual)
58#define VTK_MARSHALEXCLUDE(reason) VTK_DEFINE_WRAP_HINT_ARGS(vtk::marshalexclude, reason)
60#define VTK_MARSHALGETTER(property) VTK_DEFINE_WRAP_HINT_ARGS(vtk::marshalgetter, #property)
62#define VTK_MARSHALSETTER(property) VTK_DEFINE_WRAP_HINT_ARGS(vtk::marshalsetter, #property)
65#ifndef VTK_WRAP_HINTS_DEFINED
66#define VTK_WRAPEXCLUDE
67#define VTK_WRAPEXCLUDE_JAVASCRIPT
68#define VTK_PROPEXCLUDE
69#define VTK_NEWINSTANCE
72#define VTK_UNBLOCKTHREADS
74#define VTK_SIZEHINT(...)
75#define VTK_MARSHALAUTO
76#define VTK_MARSHALMANUAL
77#define VTK_MARSHALEXCLUDE(reason)
78#define VTK_MARSHALGETTER(property)
79#define VTK_MARSHALSETTER(property)
82#define VTK_MARSHAL_EXCLUDE_REASON_IS_REDUNDANT "is redundant"
83#define VTK_MARSHAL_EXCLUDE_REASON_IS_INTERNAL "is internal"
84#define VTK_MARSHAL_EXCLUDE_REASON_NOT_SUPPORTED \
85 "(de)serialization is not supported for this type of property"