[postgis-commits] svn - r2945 - in trunk: liblwgeom lwgeom

postgis-commits at postgis.refractions.net postgis-commits at postgis.refractions.net
Sun Sep 7 04:02:15 PDT 2008


Author: mcayland
Date: 2008-09-07 04:02:05 -0700 (Sun, 07 Sep 2008)
New Revision: 2945

Modified:
   trunk/liblwgeom/liblwgeom.h
   trunk/liblwgeom/lwgeom.c
   trunk/lwgeom/lwgeom_inout.c
   trunk/lwgeom/lwgeom_ogc.c
   trunk/lwgeom/lwgeom_pg.c
Log:
Yet another update to the liblwgeom parser API - lwgeom_from_ewkt() has been renamed to serialized_lwgeom_from_ewkt() to indicate that the function returns a serialied LWGEOM rather than an unserialized LWGEOM structure.



Modified: trunk/liblwgeom/liblwgeom.h
===================================================================
--- trunk/liblwgeom/liblwgeom.h	2008-09-07 09:14:59 UTC (rev 2944)
+++ trunk/liblwgeom/liblwgeom.h	2008-09-07 11:02:05 UTC (rev 2945)
@@ -1116,12 +1116,12 @@
 
 /* Parser access routines */
 extern char *lwgeom_to_ewkt(LWGEOM *lwgeom);
-extern SERIALIZED_LWGEOM *lwgeom_from_ewkt(char *wkt_input);
 extern char *lwgeom_to_hexwkb(LWGEOM *lwgeom, unsigned int byteorder);
 extern LWGEOM *lwgeom_from_ewkb(uchar *ewkb, size_t ewkblen);
 extern uchar *lwgeom_to_ewkb(LWGEOM *lwgeom, char byteorder, size_t *ewkblen);
 
 extern char *serialized_lwgeom_to_ewkt(uchar *serialized);
+extern SERIALIZED_LWGEOM *serialized_lwgeom_from_ewkt(char *wkt_input);
 extern char *serialized_lwgeom_to_hexwkb(uchar *serialized, unsigned int byteorder, size_t *size);
 extern char *serialized_lwgeom_to_ewkb(uchar *serialized, unsigned int byteorder, size_t *size);
 

Modified: trunk/liblwgeom/lwgeom.c
===================================================================
--- trunk/liblwgeom/lwgeom.c	2008-09-07 09:14:59 UTC (rev 2944)
+++ trunk/liblwgeom/lwgeom.c	2008-09-07 11:02:05 UTC (rev 2945)
@@ -454,27 +454,6 @@
 
 
 /*
- * Make a LWGEOM object from a WKT input string
- */
-SERIALIZED_LWGEOM *
-lwgeom_from_ewkt(char *wkt_input)
-{
-	SERIALIZED_LWGEOM *serialized_form = parse_lwg(wkt_input,
-		lwalloc, lwerror);
-
-
-	LWDEBUGF(2, "lwgeom_from_ewkt with %s",wkt_input);
-
-	if (serialized_form == NULL)
-	{
-		lwerror("lwgeom_from_ewkt:: couldnt parse!");
-		return NULL;
-	}
-
-	return serialized_form;
-}
-
-/*
  * Return an alloced string
  */
 char *
@@ -543,7 +522,7 @@
 	hexewkb[hexewkblen] = '\0';
 
 	/* Rely on grammar parser to construct a LWGEOM */
-	serialized_lwgeom = lwgeom_from_ewkt(hexewkb);
+	serialized_lwgeom = serialized_lwgeom_from_ewkt(hexewkb);
 
 	/* Free intermediate HEXified representation */
 	lwfree(hexewkb);
@@ -561,6 +540,27 @@
  */
 
 /*
+ * Make a serialzed LWGEOM object from a WKT input string
+ */
+SERIALIZED_LWGEOM *
+serialized_lwgeom_from_ewkt(char *wkt_input)
+{
+	SERIALIZED_LWGEOM *serialized_form = parse_lwg(wkt_input,
+		lwalloc, lwerror);
+
+
+	LWDEBUGF(2, "serialized_lwgeom_from_ewkt with %s",wkt_input);
+
+	if (serialized_form == NULL)
+	{
+		lwerror("serialized_lwgeom_from_ewkt:: couldnt parse!");
+		return NULL;
+	}
+
+	return serialized_form;
+}
+
+/*
  * Return an alloced string
  */
 char *

Modified: trunk/lwgeom/lwgeom_inout.c
===================================================================
--- trunk/lwgeom/lwgeom_inout.c	2008-09-07 09:14:59 UTC (rev 2944)
+++ trunk/lwgeom/lwgeom_inout.c	2008-09-07 11:02:05 UTC (rev 2945)
@@ -63,15 +63,15 @@
 Datum LWGEOM_in(PG_FUNCTION_ARGS)
 {
 	char *str = PG_GETARG_CSTRING(0);
-    SERIALIZED_LWGEOM *serialized_lwgeom;
-    LWGEOM *lwgeom;	
-    PG_LWGEOM *ret;
+	SERIALIZED_LWGEOM *serialized_lwgeom;
+	LWGEOM *lwgeom;	
+	PG_LWGEOM *ret;
 
 	/* will handle both HEXEWKB and EWKT */
-    serialized_lwgeom = lwgeom_from_ewkt(str);
+	serialized_lwgeom = serialized_lwgeom_from_ewkt(str);
 	lwgeom = lwgeom_deserialize(serialized_lwgeom->lwgeom);
     
-    ret = pglwgeom_serialize(lwgeom);
+	ret = pglwgeom_serialize(lwgeom);
 	lwgeom_release(lwgeom);
 
 	if ( is_worth_caching_pglwgeom_bbox(ret) )
@@ -476,7 +476,7 @@
 
 	POSTGIS_DEBUGF(3, "in parse_WKT_lwgeom with input: '%s'",wkt);
 
-	serialized_lwgeom = lwgeom_from_ewkt(wkt);
+	serialized_lwgeom = serialized_lwgeom_from_ewkt(wkt);
 	lwgeom = lwgeom_deserialize(serialized_lwgeom->lwgeom);
     
 	ret = pglwgeom_serialize(lwgeom);

Modified: trunk/lwgeom/lwgeom_ogc.c
===================================================================
--- trunk/lwgeom/lwgeom_ogc.c	2008-09-07 09:14:59 UTC (rev 2944)
+++ trunk/lwgeom/lwgeom_ogc.c	2008-09-07 11:02:05 UTC (rev 2945)
@@ -1002,7 +1002,7 @@
 
 	POSTGIS_DEBUGF(3, "wkt: [%s]", wkt);
 
-	serialized_lwgeom = lwgeom_from_ewkt(wkt);
+	serialized_lwgeom = serialized_lwgeom_from_ewkt(wkt);
 	lwgeom = lwgeom_deserialize(serialized_lwgeom->lwgeom);
 
 	if ( lwgeom->SRID != -1 || TYPE_GETZM(lwgeom->type) != 0 )

Modified: trunk/lwgeom/lwgeom_pg.c
===================================================================
--- trunk/lwgeom/lwgeom_pg.c	2008-09-07 09:14:59 UTC (rev 2944)
+++ trunk/lwgeom/lwgeom_pg.c	2008-09-07 11:02:05 UTC (rev 2945)
@@ -252,7 +252,7 @@
 pglwgeom_from_ewkb(uchar *ewkb, size_t ewkblen)
 {
 	PG_LWGEOM *ret;
-    SERIALIZED_LWGEOM *serialized_lwgeom;
+	SERIALIZED_LWGEOM *serialized_lwgeom;
 	char *hexewkb;
 	size_t hexewkblen = ewkblen*2;
 	int i;
@@ -264,10 +264,10 @@
 	}
 	hexewkb[hexewkblen] = '\0';
 
-    serialized_lwgeom = lwgeom_from_ewkt(hexewkb);
+	serialized_lwgeom = serialized_lwgeom_from_ewkt(hexewkb);
     
-    ret = (PG_LWGEOM *)palloc(serialized_lwgeom->size + VARHDRSZ);
-    SET_VARSIZE(ret, serialized_lwgeom->size + VARHDRSZ);
+	ret = (PG_LWGEOM *)palloc(serialized_lwgeom->size + VARHDRSZ);
+	SET_VARSIZE(ret, serialized_lwgeom->size + VARHDRSZ);
 	memcpy(VARDATA(ret), serialized_lwgeom->lwgeom, serialized_lwgeom->size);
 
 	lwfree(hexewkb);



More information about the postgis-commits mailing list