Function
От | Angel Manuel Diaz Aunion |
---|---|
Тема | Function |
Дата | |
Msg-id | 38FDEAF3.E5A07D38@ipf.uni-karlsruhe.de обсуждение исходный текст |
Список | pgsql-sql |
I'm trying to write a function which is defined as follows: <p><font size="+1"> create function lseg_res(path,path) returns<b>_lseg</b></font><br /><font size="+1"> as '/net/ipfy/angel/postgres/geometry/libMWgeom.so' language 'c';</font><p>Theoutput value is supposed to be an array, but what I get is "{}". <br />I don't know whether <p>-the functionis not well defined, or <br />-the output value can not be an array <br /> <p>The code: <br /> <p><font face="CourierNew,Courier"><font size="+1">#include "../include/geometry.h"</font></font><font face="Courier New,Courier"><fontsize="+1"></font></font><p><font face="Courier New,Courier"><font size="+1">LSEG *lseg_res(PATH *p1,PATH*p2)</font></font><font face="Courier New,Courier"><font size="+1"></font></font><p><font face="Courier New,Courier"><fontsize="+1">{</font></font><font face="Courier New,Courier"><font size="+1"></font></font><p><font face="CourierNew,Courier"><font size="+1"> int4 i,j;</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br/><font face="Courier New,Courier"><font size="+1"> bool c;</font></font><font face="CourierNew,Courier"><font size="+1"></font></font><p><font face="Courier New,Courier"><font size="+1"> LSEG *result[p1->npts];</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br /><font face="CourierNew,Courier"><font size="+1"> for (j = 0; j < p1->npts; j++)</font></font><br /><font face="CourierNew,Courier"><font size="+1"> </font></font><br /><font face="Courier New,Courier"><font size="+1"> {</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br /><font face="CourierNew,Courier"><font size="+1"> result[j] = palloc (sizeof(LSEG));</font></font><br /><font face="CourierNew,Courier"><font size="+1"> </font></font><br /><font face="Courier New,Courier"><font size="+1"> }</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br /><font face="CourierNew,Courier"><font size="+1"> c = path_inter(p1,p2);</font></font><font face="Courier New,Courier"><fontsize="+1"></font></font><p><font face="Courier New,Courier"><font size="+1"> if (c == TRUE )</font></font><br/><font face="Courier New,Courier"><font size="+1"> </font></font><br /><font face="Courier New,Courier"><fontsize="+1"> {</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br/><font face="Courier New,Courier"><font size="+1"> for (i = 0 ; i< p1->npts ;i ++)</font></font><font face="Courier New,Courier"><font size="+1"></font></font><p><font face="Courier New,Courier"><fontsize="+1"> {</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br/><font face="Courier New,Courier"><font size="+1"> result[i] = lseg_construct(&p1->p[i], &p1->p[i + 1]);</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br/><font face="Courier New,Courier"><font size="+1"> return result[i];</font></font><br/><font face="Courier New,Courier"><font size="+1"> </font></font><br /><font face="Courier New,Courier"><fontsize="+1"> }</font></font><br /><font face="Courier New,Courier"><font size="+1"> </font></font><br/><font face="Courier New,Courier"><font size="+1">return NULL;</font></font><font face="CourierNew,Courier"><font size="+1"></font></font><p><font face="Courier New,Courier"><font size="+1">}</font></font><fontface="Courier New,Courier"><font size="+1"></font></font><p> <p>Thank you very much. <br /> <br /> <p>Angel Manuel Diaz Aunion. <br />Institut fuer Photogrametrie und Fernerkundung. <br />Universitaet Karlsruhe.<br />
В списке pgsql-sql по дате отправления: