/* n3xd_ocp — the extension surface, kept out of the OCP namespace on purpose. OCP.* stays a drop-in replacement for cadquery-ocp-novtk, symbol for symbol, so parity testing means something. Anything that goes *beyond* upstream — bulk array extraction, batched measurement, GIL-free serialisation — lives here instead, in the same wheel. The backend adopts these after the cutover, one call site at a time. Only the leaf modules are registered here. Creating the `n3xd_ocp` parent from C++ would put a bare module in sys.modules, and a later `import n3xd_ocp` would then find it and never run the package's __init__.py. */ #include "../common/occt_module.h" namespace nb = nanobind; void register_ext_bintools(); void register_ext_debug(); void register_ext_helix(); void register_ext_measure(); void register_ext_sample(); void register_ext_tess(); void register_ext(nb::module_ &) { register_ext_bintools(); register_ext_debug(); register_ext_helix(); register_ext_measure(); register_ext_sample(); register_ext_tess(); }