File: Intrv_pre.cpp

package info (click to toggle)
python-ocp 7.8.1.2-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 64,720 kB
  • sloc: cpp: 362,337; pascal: 33; python: 23; makefile: 4
file content (79 lines) | stat: -rw-r--r-- 3,151 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79

// pybind 11 related includes
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>

namespace py = pybind11;


// Standard Handle
#include <Standard_Handle.hxx>

// user-defined inclusion per module before includes

// includes to resolve forward declarations
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>
#include <Adaptor2d_Curve2d.hxx>
#include <Adaptor3d_Curve.hxx>
#include <Adaptor3d_Surface.hxx>

// module includes
#include <Intrv_Interval.hxx>
#include <Intrv_Intervals.hxx>
#include <Intrv_Position.hxx>
#include <Intrv_SequenceOfInterval.hxx>

// template related includes

#include "NCollection_tmpl.hxx"


// user-defined pre
#include "OCP_specific.inc"

// user-defined inclusion per module

// Module definiiton
void register_Intrv_enums(py::module &main_module) {


py::module m = main_module.def_submodule("Intrv", R"#()#");

// user-defined inclusion per module in the body

// enums
    py::enum_<Intrv_Position>(m, "Intrv_Position",R"#(None)#")
        .value("Intrv_Before",Intrv_Position::Intrv_Before)
        .value("Intrv_JustBefore",Intrv_Position::Intrv_JustBefore)
        .value("Intrv_OverlappingAtStart",Intrv_Position::Intrv_OverlappingAtStart)
        .value("Intrv_JustEnclosingAtEnd",Intrv_Position::Intrv_JustEnclosingAtEnd)
        .value("Intrv_Enclosing",Intrv_Position::Intrv_Enclosing)
        .value("Intrv_JustOverlappingAtStart",Intrv_Position::Intrv_JustOverlappingAtStart)
        .value("Intrv_Similar",Intrv_Position::Intrv_Similar)
        .value("Intrv_JustEnclosingAtStart",Intrv_Position::Intrv_JustEnclosingAtStart)
        .value("Intrv_Inside",Intrv_Position::Intrv_Inside)
        .value("Intrv_JustOverlappingAtEnd",Intrv_Position::Intrv_JustOverlappingAtEnd)
        .value("Intrv_OverlappingAtEnd",Intrv_Position::Intrv_OverlappingAtEnd)
        .value("Intrv_JustAfter",Intrv_Position::Intrv_JustAfter)
        .value("Intrv_After",Intrv_Position::Intrv_After).export_values();

//Python trampoline classes

// pre-register typdefs+classes (topologically sorted)
    py::class_<Intrv_Interval , shared_ptr<Intrv_Interval>  >(m,"Intrv_Interval",R"#(**-----------**** Other ***---* IsBefore ***----------* IsJustBefore ***---------------* IsOverlappingAtStart ***------------------------* IsJustEnclosingAtEnd ***-----------------------------------* IsEnclosing ***----* IsJustOverlappingAtStart ***-------------* IsSimilar ***------------------------* IsJustEnclosingAtStart ***-* IsInside ***------* IsJustOverlappingAtEnd ***-----------------* IsOverlappingAtEnd ***--------* IsJustAfter ***---* IsAfter)#");
    py::class_<Intrv_Intervals , shared_ptr<Intrv_Intervals>  >(m,"Intrv_Intervals",R"#(The class Intervals is a sorted sequence of non overlapping Real Intervals.)#");
    preregister_template_NCollection_Sequence<Intrv_Interval>(m,"Intrv_SequenceOfInterval");

};

// user-defined post-inclusion per module

// user-defined post