PostGIS  2.4.9dev-r@@SVN_REVISION@@
lwgeom_geos_prepared.c File Reference
#include <assert.h>
#include "../postgis_config.h"
#include "lwgeom_geos_prepared.h"
#include "lwgeom_cache.h"
Include dependency graph for lwgeom_geos_prepared.c:

Go to the source code of this file.

Data Structures

struct  PrepGeomHashEntry
 

Macros

#define PREPARED_BACKEND_HASH_SIZE   32
 

Functions

uint32 mcxt_ptr_hasha (const void *key, Size keysize)
 
static void CreatePrepGeomHash (void)
 
static void AddPrepGeomHashEntry (PrepGeomHashEntry pghe)
 
static PrepGeomHashEntryGetPrepGeomHashEntry (MemoryContext mcxt)
 
static void DeletePrepGeomHashEntry (MemoryContext mcxt)
 
static void PreparedCacheDelete (void *ptr)
 
static int PrepGeomCacheBuilder (const LWGEOM *lwgeom, GeomCache *cache)
 Given a generic GeomCache, and a geometry to prepare, prepare a PrepGeomCache and stick it into the GeomCache->index slot. More...
 
static int PrepGeomCacheCleaner (GeomCache *cache)
 This function is passed into the generic GetGeomCache function in the case of a cache miss, so that it can free the particular indexed structure being managed. More...
 
static GeomCache * PrepGeomCacheAllocator ()
 
PrepGeomCacheGetPrepGeomCache (FunctionCallInfo fcinfo, GSERIALIZED *g1, GSERIALIZED *g2)
 Given a couple potential geometries and a function call context, return a prepared structure for one of them, if such a structure doesn't already exist. More...
 

Variables

static HTAB * PrepGeomHash = NULL
 
static GeomCacheMethods PrepGeomCacheMethods