PostGIS  3.3.9dev-r@@SVN_REVISION@@

◆ lwt_LoadTopology()

LWT_TOPOLOGY* lwt_LoadTopology ( LWT_BE_IFACE iface,
const char *  name 
)

Loads an existing topology by name from the database.

Parameters
ifacethe backend interface handler (see lwt_CreateBackendIface)
namename of the topology to load
Returns
the handler of the topology, or NULL on error (liblwgeom error handler will be invoked with error message)

Definition at line 491 of file lwgeom_topo.c.

492 {
493  LWT_BE_TOPOLOGY* be_topo;
494  LWT_TOPOLOGY* topo;
495 
496  be_topo = lwt_be_loadTopologyByName(iface, name);
497  if ( ! be_topo ) {
498  //lwerror("Could not load topology from backend: %s",
499  lwerror("%s", lwt_be_lastErrorMessage(iface));
500  return NULL;
501  }
502  topo = lwalloc(sizeof(LWT_TOPOLOGY));
503  topo->be_iface = iface;
504  topo->be_topo = be_topo;
505  topo->srid = lwt_be_topoGetSRID(topo);
506  topo->hasZ = lwt_be_topoHasZ(topo);
507  topo->precision = lwt_be_topoGetPrecision(topo);
508 
509  return topo;
510 }
void * lwalloc(size_t size)
Definition: lwutil.c:227
struct LWT_BE_TOPOLOGY_T LWT_BE_TOPOLOGY
Topology handler.
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:190
const char * lwt_be_lastErrorMessage(const LWT_BE_IFACE *be)
Definition: lwgeom_topo.c:119
static double lwt_be_topoGetPrecision(LWT_TOPOLOGY *topo)
Definition: lwgeom_topo.c:137
static int lwt_be_topoHasZ(LWT_TOPOLOGY *topo)
Definition: lwgeom_topo.c:143
LWT_BE_TOPOLOGY * lwt_be_loadTopologyByName(LWT_BE_IFACE *be, const char *name)
Definition: lwgeom_topo.c:125
static int lwt_be_topoGetSRID(LWT_TOPOLOGY *topo)
Definition: lwgeom_topo.c:131
LWT_BE_TOPOLOGY * be_topo
const LWT_BE_IFACE * be_iface

References LWT_TOPOLOGY_T::be_iface, LWT_TOPOLOGY_T::be_topo, LWT_TOPOLOGY_T::hasZ, lwalloc(), lwerror(), lwt_be_lastErrorMessage(), lwt_be_loadTopologyByName(), lwt_be_topoGetPrecision(), lwt_be_topoGetSRID(), lwt_be_topoHasZ(), LWT_TOPOLOGY_T::precision, and LWT_TOPOLOGY_T::srid.

Here is the call graph for this function: