Mercurial > hg > freeDiameter
annotate extensions/dbg_interactive/dbg_interactive.c @ 662:2e94ef0515d7 1.1.0-rc1
Updated copyright information
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Fri, 14 Jan 2011 16:27:21 +0900 |
parents | f198d16fa7f4 |
children | 4a9f08d6b6ba |
rev | line source |
---|---|
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
1 /********************************************************************************************************* |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
2 * Software License Agreement (BSD License) * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
3 * Author: Sebastien Decugis <sdecugis@nict.go.jp> * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
4 * * |
662
2e94ef0515d7
Updated copyright information
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
658
diff
changeset
|
5 * Copyright (c) 2011, WIDE Project and NICT * |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
6 * All rights reserved. * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
7 * * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
8 * Redistribution and use of this software in source and binary forms, with or without modification, are * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
9 * permitted provided that the following conditions are met: * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
10 * * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
11 * * Redistributions of source code must retain the above * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
12 * copyright notice, this list of conditions and the * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
13 * following disclaimer. * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
14 * * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
15 * * Redistributions in binary form must reproduce the above * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
16 * copyright notice, this list of conditions and the * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
17 * following disclaimer in the documentation and/or other * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
18 * materials provided with the distribution. * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
19 * * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
20 * * Neither the name of the WIDE Project or NICT nor the * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
21 * names of its contributors may be used to endorse or * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
22 * promote products derived from this software without * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
23 * specific prior written permission of WIDE Project and * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
24 * NICT. * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
25 * * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
26 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
27 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
28 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
29 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
30 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
31 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
32 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
33 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
34 *********************************************************************************************************/ |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
35 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
36 #include <Python.h> |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
37 #include <freeDiameter/extension.h> |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
38 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
39 /* wrapper generated by SWIG */ |
624
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
40 #if PY_VERSION_HEX >= 0x03000000 |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
41 extern void PyInit__fDpy(void); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
42 #define WRAPPER_INIT PyInit__fDpy() |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
43 #else /* PY_VERSION_HEX */ |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
44 extern void init_fDpy(void); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
45 #define WRAPPER_INIT init_fDpy() |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
46 #endif /* PY_VERSION_HEX */ |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
47 |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
48 /* The string created in the shadow proxy C string file */ |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
49 extern unsigned char fDpy_py[]; |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
50 extern unsigned int fDpy_py_len; |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
51 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
52 /* Run an interactive interpreter in a separate thread */ |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
53 static pthread_t pyinterp = (pthread_t)NULL; |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
54 static void * myinterp (void * arg) |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
55 { |
618
1dbc4c5397d6
Attempting to improve python wrapper usability (work in progress)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
609
diff
changeset
|
56 char * dum[3] = { "<dbg_interactive>", arg, NULL }; |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
57 TRACE_ENTRY("%p", arg); |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
58 |
625
2cd2cf7abe2a
Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
624
diff
changeset
|
59 fd_log_threadname ( "fDpy" ); |
2cd2cf7abe2a
Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
624
diff
changeset
|
60 |
658
f198d16fa7f4
Initial commit for 1.1.0:
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
639
diff
changeset
|
61 CHECK_FCT_DO(fd_core_waitstartcomplete(), goto end); |
618
1dbc4c5397d6
Attempting to improve python wrapper usability (work in progress)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
609
diff
changeset
|
62 |
625
2cd2cf7abe2a
Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
624
diff
changeset
|
63 fd_log_debug("\nStarting interactive python interpreter [experimental].\n"); |
2cd2cf7abe2a
Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
624
diff
changeset
|
64 if (!arg) |
2cd2cf7abe2a
Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
624
diff
changeset
|
65 fd_log_debug("Example syntax:\n >>> print cvar.fd_g_config.cnf_diamid\n '%s'\n", fd_g_config->cnf_diamid); |
618
1dbc4c5397d6
Attempting to improve python wrapper usability (work in progress)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
609
diff
changeset
|
66 Py_Main(arg ? 2 : 1, dum); |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
67 |
625
2cd2cf7abe2a
Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
624
diff
changeset
|
68 end: |
639
95a784729cac
Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
625
diff
changeset
|
69 /* Upon exit, issue the order of terminating to fD, if the interpreter was started without a file */ |
95a784729cac
Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
625
diff
changeset
|
70 if (!arg) { |
95a784729cac
Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
625
diff
changeset
|
71 CHECK_FCT_DO(fd_event_send(fd_g_config->cnf_main_ev, FDEV_TERMINATE, 0, NULL), ); |
95a784729cac
Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
625
diff
changeset
|
72 } |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
73 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
74 return NULL; |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
75 } |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
76 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
77 /* Register the callbacks to the daemon */ |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
78 static int di_main(char * conffile) |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
79 { |
624
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
80 char * shadow_hlp = NULL; |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
81 int mustfree = 0; |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
82 TRACE_ENTRY("%p", conffile); |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
83 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
84 Py_Initialize(); |
621
04dbea46c7a2
Cleanup many SWIG definitions from main .h files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
618
diff
changeset
|
85 |
624
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
86 WRAPPER_INIT; |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
87 |
624
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
88 /* Small hack to avoid duplicating the string, we replace the last char by a \0. |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
89 It works if the python file is terminated with several \n */ |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
90 if ( (fDpy_py[fDpy_py_len - 2] == '\n') |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
91 && (fDpy_py[fDpy_py_len - 1] == '\n')) { |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
92 fDpy_py[fDpy_py_len - 1] = '\0'; |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
93 shadow_hlp = (char *)&fDpy_py[0]; |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
94 } else { |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
95 CHECK_MALLOC(shadow_hlp = malloc(fDpy_py_len + 1)); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
96 memcpy(shadow_hlp, fDpy_py, fDpy_py_len); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
97 shadow_hlp[fDpy_py_len] = '\0'; |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
98 mustfree=1; |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
99 } |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
100 |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
101 PyRun_SimpleString("__file__ = \"\"\n"); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
102 PyRun_SimpleString(shadow_hlp); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
103 |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
104 if (mustfree) |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
105 free(shadow_hlp); |
a5682d003ed9
Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
621
diff
changeset
|
106 |
609
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
107 CHECK_POSIX( pthread_create(&pyinterp, NULL, myinterp, conffile) ); |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
108 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
109 return 0; |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
110 } |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
111 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
112 /* Terminate the extension */ |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
113 void fd_ext_fini(void) |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
114 { |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
115 TRACE_ENTRY(); |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
116 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
117 CHECK_FCT_DO(fd_thr_term(&pyinterp), ); |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
118 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
119 /* Cleanup the python interpreter */ |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
120 Py_Finalize(); |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
121 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
122 return ; |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
123 } |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
124 |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
125 /* Define the entry point function */ |
2d15fd8ef5ba
Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
126 EXTENSION_ENTRY("dbg_interactive", di_main); |