PostGIS  2.2.8dev-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.

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

Definition at line 497 of file lwgeom_topo.c.

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.

498 {
499  LWT_BE_TOPOLOGY* be_topo;
500  LWT_TOPOLOGY* topo;
502  be_topo = lwt_be_loadTopologyByName(iface, name);
503  if ( ! be_topo ) {
504  //lwerror("Could not load topology from backend: %s",
505  lwerror("%s", lwt_be_lastErrorMessage(iface));
506  return NULL;
507  }
508  topo = lwalloc(sizeof(LWT_TOPOLOGY));
509  topo->be_iface = iface;
510  topo->be_topo = be_topo;
511  topo->srid = lwt_be_topoGetSRID(topo);
512  topo->hasZ = lwt_be_topoHasZ(topo);
513  topo->precision = lwt_be_topoGetPrecision(topo);
515  return topo;
516 }
static int lwt_be_topoGetSRID(LWT_TOPOLOGY *topo)
Definition: lwgeom_topo.c:136
static double lwt_be_topoGetPrecision(LWT_TOPOLOGY *topo)
Definition: lwgeom_topo.c:142
const LWT_BE_IFACE * be_iface
Topology handler.
void * lwalloc(size_t size)
Definition: lwutil.c:199
static int lwt_be_topoHasZ(LWT_TOPOLOGY *topo)
Definition: lwgeom_topo.c:148
const char * lwt_be_lastErrorMessage(const LWT_BE_IFACE *be)
Definition: lwgeom_topo.c:124
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
Definition: lwutil.c:74
LWT_BE_TOPOLOGY * lwt_be_loadTopologyByName(LWT_BE_IFACE *be, const char *name)
Definition: lwgeom_topo.c:130
Here is the call graph for this function: