]> granicus.if.org Git - postgis/commitdiff
Added bool hasBBOX(geometry). Removed useless input copy in zmflag(geometry).
authorSandro Santilli <strk@keybit.net>
Mon, 27 Dec 2004 09:59:04 +0000 (09:59 +0000)
committerSandro Santilli <strk@keybit.net>
Mon, 27 Dec 2004 09:59:04 +0000 (09:59 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@1183 b70326c6-7e19-0410-871a-916f4a2858ee

lwgeom/lwgeom_functions_basic.c
lwgeom/lwpostgis.sql.in

index 2a24c169d1e58e2208719cff34b126d1e9e5ae6e..81b4dc30907ba04c51ded3fef542a15bb22c82dc 100644 (file)
@@ -53,6 +53,7 @@ Datum LWGEOM_makeline(PG_FUNCTION_ARGS);
 Datum LWGEOM_line_from_mpoint(PG_FUNCTION_ARGS);
 Datum LWGEOM_addpoint(PG_FUNCTION_ARGS);
 Datum LWGEOM_asEWKT(PG_FUNCTION_ARGS);
+Datum LWGEOM_hasBBOX(PG_FUNCTION_ARGS);
 
 
 /*------------------------------------------------------------------*/
@@ -2400,13 +2401,21 @@ Datum LWGEOM_zmflag(PG_FUNCTION_ARGS)
        unsigned char type;
        int ret = 0;
 
-       in = (PG_LWGEOM *)PG_DETOAST_DATUM_COPY(PG_GETARG_DATUM(0));
+       in = (PG_LWGEOM *)PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
        type = in->type;
        if ( TYPE_HASZ(type) ) ret += 2;
        if ( TYPE_HASM(type) ) ret += 1;
        PG_RETURN_INT16(ret);
 }
 
+PG_FUNCTION_INFO_V1(LWGEOM_hasBBOX);
+Datum LWGEOM_hasBBOX(PG_FUNCTION_ARGS)
+{
+       PG_LWGEOM *in;
+       in = (PG_LWGEOM *)PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
+       PG_RETURN_BOOL(lwgeom_hasBBOX(in->type));
+}
+
 // Return: 2,3 or 4
 PG_FUNCTION_INFO_V1(LWGEOM_ndims);
 Datum LWGEOM_ndims(PG_FUNCTION_ARGS)
@@ -2575,3 +2584,4 @@ Datum LWGEOM_asEWKT(PG_FUNCTION_ARGS)
        pfree(result_cstring);
        PG_RETURN_POINTER(result);
 }
+
index 6ed5cab2bdd29a695caeb602644638c971ec317b..adfe5a75c25aae0d6c899aca4678ea5c39fab315 100644 (file)
@@ -941,7 +941,7 @@ CREATEFUNCTION getSRID(geometry)
        AS '@MODULE_FILENAME@','LWGEOM_getSRID'
        LANGUAGE 'C' WITH (isstrict,iscachable);
 
-CREATEFUNCTION getbbox(geometry)
+CREATEFUNCTION getBBOX(geometry)
         RETURNS box2d
         AS '@MODULE_FILENAME@','LWGEOM_to_BOX2DFLOAT4'
         LANGUAGE 'C' WITH (isstrict,iscachable);
@@ -1698,6 +1698,11 @@ CREATEFUNCTION zmflag(geometry)
        AS '@MODULE_FILENAME@', 'LWGEOM_zmflag'
        LANGUAGE 'C' WITH (iscachable,isstrict);
 
+CREATEFUNCTION hasBBOX(geometry)
+       RETURNS bool
+       AS '@MODULE_FILENAME@', 'LWGEOM_hasBBOX'
+       LANGUAGE 'C' WITH (iscachable,isstrict);
+
 CREATEFUNCTION ndims(geometry)
        RETURNS smallint
        AS '@MODULE_FILENAME@', 'LWGEOM_ndims'