source: issm/oecreview/Archive/11961-11984/ISSM-11968-11969.diff

Last change on this file was 11991, checked in by Eric.Larour, 13 years ago

oecreview from 11518 to present

File size: 2.6 KB
RevLine 
[11991]1Index: /proj/ice/larour/issm-uci-clean/trunk-jpl/src/mex/TriMesh/TriMesh.h
2===================================================================
3--- /proj/ice/larour/issm-uci-clean/trunk-jpl/src/mex/TriMesh/TriMesh.h (revision 11968)
4+++ /proj/ice/larour/issm-uci-clean/trunk-jpl/src/mex/TriMesh/TriMesh.h (revision 11969)
5@@ -12,7 +12,13 @@
6 #error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
7 #endif
8
9+/*Very important definition in case we are compiling a python module!: needs to come before header files inclusion*/
10+#ifdef _HAVE_PYTHON_
11+#define PY_ARRAY_UNIQUE_SYMBOL PythonIOSymbol
12+#endif
13+
14 #include "../../c/include/globals.h"
15+#include "../../c/toolkits/toolkits.h"
16 #include "../../c/include/include.h"
17 #include "../../c/modules/modules.h"
18 #include "../../c/Container/Container.h"
19@@ -34,7 +40,20 @@
20 #define SEGMENTMARKERLIST (mxArray**)&plhs[4]
21
22 #endif
23+#ifdef _HAVE_PYTHON_
24+/* serial input macros: */
25+#define DOMAINOUTLINE PyTuple_GetItem(args,0)
26+#define AREA PyTuple_GetItem(args,1)
27+#define ORDER PyTuple_GetItem(args,2)
28
29+/* serial output macros: */
30+#define INDEX output,0
31+#define X output,1
32+#define Y output,2
33+#define SEGMENTS output,3
34+#define SEGMENTMARKERLIST output,4
35+#endif
36+
37 /* local prototypes: */
38 void TriMeshUsage(void);
39
40Index: /proj/ice/larour/issm-uci-clean/trunk-jpl/src/mex/TriMesh/TriMesh.cpp
41===================================================================
42--- /proj/ice/larour/issm-uci-clean/trunk-jpl/src/mex/TriMesh/TriMesh.cpp (revision 11968)
43+++ /proj/ice/larour/issm-uci-clean/trunk-jpl/src/mex/TriMesh/TriMesh.cpp (revision 11969)
44@@ -4,7 +4,7 @@
45
46 #include "./TriMesh.h"
47
48-WRAPPER(TriMesh, char* DOMAINOUTLINE, double AREA, bool ORDER){
49+WRAPPER(TriMesh){
50
51 /* input: */
52 char* domainname=NULL;
53@@ -32,12 +32,14 @@
54 FetchData(&area,AREA);
55 FetchData(&order,ORDER);
56
57+
58 /*Read domain outline: */
59 domain=DomainOutlineRead(domainname,false);
60
61 /*call x core: */
62 TriMeshx(&index,&x,&y,&segments,&segmentmarkerlist,domain,area,order);
63-
64+
65+
66 /*write outputs: */
67 WriteData(INDEX,index);
68 WriteData(X,x);
69@@ -55,9 +57,10 @@
70
71 /*end module: */
72 MODULEEND();
73+
74 }
75
76-void TriMeshUsage(void)
77+void TriMeshUsage(void) //{{{1
78 {
79 printf("\n");
80 printf(" usage: [index,x,y,segments,segmentmarkers]=TriMesh(domainoutlinefilename,area,ordered) \n");
81@@ -69,11 +72,4 @@
82 printf(" order they are made by Triangle (ie none), or ordered counter clockwise around the domain outline.\n");
83 printf("\n");
84 }
85-
86-
87-#ifdef _HAVE_PYTHON_
88-BOOST_PYTHON_MODULE(TriMesh){
89- boost::python::numeric::array::set_module_and_type( "numpy", "ndarray");
90- def("TriMesh",TriMesh);
91-}
92-#endif
93+//}}}
Note: See TracBrowser for help on using the repository browser.