|
PostGIS
3.1.6dev-r@@SVN_REVISION@@
|
Structure containing base backend callbacks. More...
#include <liblwgeom_topo.h>

Data Fields | |
| const char *(* | lastErrorMessage )(const LWT_BE_DATA *be) |
| Read last error message from backend. More... | |
| LWT_BE_TOPOLOGY *(* | createTopology )(const LWT_BE_DATA *be, const char *name, int32_t srid, double precision, int hasZ) |
| Create a new topology in the backend. More... | |
| LWT_BE_TOPOLOGY *(* | loadTopologyByName )(const LWT_BE_DATA *be, const char *name) |
| Load a topology from the backend. More... | |
| int(* | freeTopology )(LWT_BE_TOPOLOGY *topo) |
| Release memory associated to a backend topology. More... | |
| LWT_ISO_NODE *(* | getNodeById )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t *numelems, int fields) |
| Get nodes by id. More... | |
| LWT_ISO_NODE *(* | getNodeWithinDistance2D )(const LWT_BE_TOPOLOGY *topo, const LWPOINT *pt, double dist, uint64_t *numelems, int fields, int64_t limit) |
| Get nodes within distance by point. More... | |
| int(* | insertNodes )(const LWT_BE_TOPOLOGY *topo, LWT_ISO_NODE *nodes, uint64_t numelems) |
| Insert nodes. More... | |
| LWT_ISO_EDGE *(* | getEdgeById )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t *numelems, int fields) |
| Get edge by id. More... | |
| LWT_ISO_EDGE *(* | getEdgeWithinDistance2D )(const LWT_BE_TOPOLOGY *topo, const LWPOINT *pt, double dist, uint64_t *numelems, int fields, int64_t limit) |
| Get edges within distance by point. More... | |
| LWT_ELEMID(* | getNextEdgeId )(const LWT_BE_TOPOLOGY *topo) |
| Get next available edge identifier. More... | |
| int(* | insertEdges )(const LWT_BE_TOPOLOGY *topo, LWT_ISO_EDGE *edges, uint64_t numelems) |
| Insert edges. More... | |
| int(* | updateEdges )(const LWT_BE_TOPOLOGY *topo, const LWT_ISO_EDGE *sel_edge, int sel_fields, const LWT_ISO_EDGE *upd_edge, int upd_fields, const LWT_ISO_EDGE *exc_edge, int exc_fields) |
| Update edges selected by fields match/mismatch. More... | |
| LWT_ISO_FACE *(* | getFaceById )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t *numelems, int fields) |
| Get faces by id. More... | |
| LWT_ELEMID(* | getFaceContainingPoint )(const LWT_BE_TOPOLOGY *topo, const LWPOINT *pt) |
| Get face containing point. More... | |
| int(* | updateTopoGeomEdgeSplit )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID split_edge, LWT_ELEMID new_edge1, LWT_ELEMID new_edge2) |
| Update TopoGeometry objects after an edge split event. More... | |
| int(* | deleteEdges )(const LWT_BE_TOPOLOGY *topo, const LWT_ISO_EDGE *sel_edge, int sel_fields) |
| Delete edges. More... | |
| LWT_ISO_NODE *(* | getNodeWithinBox2D )(const LWT_BE_TOPOLOGY *topo, const GBOX *box, uint64_t *numelems, int fields, int limit) |
| Get edges whose bounding box overlaps a given 2D bounding box. More... | |
| LWT_ISO_EDGE *(* | getEdgeWithinBox2D )(const LWT_BE_TOPOLOGY *topo, const GBOX *box, uint64_t *numelems, int fields, int limit) |
| Get edges whose bounding box overlaps a given 2D bounding box. More... | |
| LWT_ISO_EDGE *(* | getEdgeByNode )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t *numelems, int fields) |
| Get edges that start or end on any of the given node identifiers. More... | |
| int(* | updateNodes )(const LWT_BE_TOPOLOGY *topo, const LWT_ISO_NODE *sel_node, int sel_fields, const LWT_ISO_NODE *upd_node, int upd_fields, const LWT_ISO_NODE *exc_node, int exc_fields) |
| Update nodes selected by fields match/mismatch. More... | |
| int(* | updateTopoGeomFaceSplit )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID split_face, LWT_ELEMID new_face1, LWT_ELEMID new_face2) |
| Update TopoGeometry objects after a face split event. More... | |
| int(* | insertFaces )(const LWT_BE_TOPOLOGY *topo, LWT_ISO_FACE *faces, uint64_t numelems) |
| Insert faces. More... | |
| uint64_t(* | updateFacesById )(const LWT_BE_TOPOLOGY *topo, const LWT_ISO_FACE *faces, uint64_t numfaces) |
| Update faces by id. More... | |
| LWT_ELEMID *(* | getRingEdges )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID edge, uint64_t *numedges, int limit) |
| int(* | updateEdgesById )(const LWT_BE_TOPOLOGY *topo, const LWT_ISO_EDGE *edges, uint64_t numedges, int upd_fields) |
| Update edges by id. More... | |
| LWT_ISO_EDGE *(* | getEdgeByFace )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t *numelems, int fields, const GBOX *box) |
| Get edges that have any of the given faces on the left or right side and optionally whose bounding box overlaps the given one. More... | |
| LWT_ISO_NODE *(* | getNodeByFace )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *faces, uint64_t *numelems, int fields, const GBOX *box) |
| Get isolated nodes contained in any of the given faces. More... | |
| int(* | updateNodesById )(const LWT_BE_TOPOLOGY *topo, const LWT_ISO_NODE *nodes, uint64_t numnodes, int upd_fields) |
| Update nodes by id. More... | |
| int(* | deleteFacesById )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t numelems) |
| Delete faces by id. More... | |
| int(* | topoGetSRID )(const LWT_BE_TOPOLOGY *topo) |
| Get topology SRID. More... | |
| double(* | topoGetPrecision )(const LWT_BE_TOPOLOGY *topo) |
| Get topology precision. More... | |
| int(* | topoHasZ )(const LWT_BE_TOPOLOGY *topo) |
| Get topology Z flag. More... | |
| int(* | deleteNodesById )(const LWT_BE_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t numelems) |
| Delete nodes by id. More... | |
| int(* | checkTopoGeomRemEdge )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID rem_edge, LWT_ELEMID face_left, LWT_ELEMID face_right) |
| Check TopoGeometry objects before an edge removal event. More... | |
| int(* | updateTopoGeomFaceHeal )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID face1, LWT_ELEMID face2, LWT_ELEMID newface) |
| Update TopoGeometry objects after healing two faces. More... | |
| int(* | checkTopoGeomRemNode )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID rem_node, LWT_ELEMID e1, LWT_ELEMID e2) |
| Check TopoGeometry objects before a node removal event. More... | |
| int(* | updateTopoGeomEdgeHeal )(const LWT_BE_TOPOLOGY *topo, LWT_ELEMID edge1, LWT_ELEMID edge2, LWT_ELEMID newedge) |
| Update TopoGeometry objects after healing two edges. More... | |
| LWT_ISO_FACE *(* | getFaceWithinBox2D )(const LWT_BE_TOPOLOGY *topo, const GBOX *box, uint64_t *numelems, int fields, int limit) |
| Get faces whose bounding box overlaps a given 2D bounding box. More... | |
Structure containing base backend callbacks.
Used for registering into the backend iface
Definition at line 140 of file liblwgeom_topo.h.