![]() |
MobilityDB 1.3
|
Ever/always spatial relationships for temporal circular buffers. More...
#include "cbuffer/tcbuffer_spatialrels.h"
#include <assert.h>
#include <meos.h>
#include <meos_internal_geo.h>
#include "temporal/lifting.h"
#include "temporal/type_util.h"
#include "geo/tgeo_spatialfuncs.h"
#include "geo/tgeo_spatialrels.h"
#include "cbuffer/cbuffer.h"
#include "cbuffer/tcbuffer.h"
#include "cbuffer/tcbuffer_spatialfuncs.h"
Functions | |
int | acontains_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp) |
Return 1 if a circular buffer always contains a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | acontains_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp) |
Return 1 if a geometry always contains a temporal circular buffer, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | acontains_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer always contains a circular buffer, 0 if not, and -1 on error. More... | |
int | acontains_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer always contains a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | acovers_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp) |
Return 1 if a circular buffer always covers a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | acovers_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp) |
Return 1 if a geometry always covers a temporal circular buffer, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | acovers_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer always covers a circular buffer, 0 if not, and -1 on error. More... | |
int | acovers_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer always covers a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | acovers_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if a temporal circular buffer always covers another one, 0 if not, and -1 on error. More... | |
int | adisjoint_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer and a geometry are always disjoint, 0 if not, and -1 on error. More... | |
int | adisjoint_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer and a geometry are always disjoint,0 if not, and -1 on error or if the geometry is empty. More... | |
int | adisjoint_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if the temporal circular buffers are always disjoint, 0 if not, and -1 on error or if the temporal circular buffers do not intersect in time. More... | |
int | adwithin_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, double dist) |
Return 1 if a geometry and a temporal circular buffer are always within a distance, 0 if not, -1 on error. More... | |
int | adwithin_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, double dist) |
Return 1 if a geometry and a temporal circular buffer are always within a distance, 0 if not, -1 on error or if the geometry is empty. More... | |
int | adwithin_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, double dist) |
Return 1 if two temporal circular buffers are always within a distance, 0 if not, -1 on error or if the temporal circular buffers do not intersect on time. More... | |
int | aintersects_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a circular buffer and a temporal circular buffer always intersect, 0 if not, and -1 on error. More... | |
int | aintersects_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a geometry and a temporal circular buffer always intersect, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | aintersects_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if the temporal circular buffers always intersect, 0 if not, and -1 on error or if the temporal circular buffers do not intersect in time. More... | |
int | atouches_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer always touches a circular buffer, 0 if not, and -1 on error. More... | |
int | atouches_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer always touches a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | atouches_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if a temporal circular buffer always touches another one, 0 if not, and -1 on error. More... | |
int | ea_contains_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp, bool ever) |
Return 1 if a circular buffer ever contains a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | ea_contains_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp, bool ever) |
Return 1 if a geometry ever/always contains a temporal circular buffer, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_contains_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, bool ever) |
Return 1 if a temporal circular buffer ever/always contains a circular buffer, 0 if not, and -1 on error. More... | |
int | ea_contains_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, bool ever) |
Return 1 if a temporal circular buffer ever/always contains a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_covers_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp, bool ever) |
Return 1 if a circular buffer ever covers a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | ea_covers_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp, bool ever) |
Return 1 if a geometry ever/always covers a temporal circular buffer 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_covers_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, bool ever) |
Return 1 if a temporal circular buffer ever/always covers a circular buffer, 0 if not, and -1 on error. More... | |
int | ea_covers_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, bool ever) |
Return 1 if a temporal circular buffer ever/always covers a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_covers_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, bool ever) |
Return 1 if a temporal circular buffer ever/always covers another one, 0 if not, and -1 on error. More... | |
int | ea_disjoint_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp, bool ever) |
Return 1 if a temporal circular buffer and a circular buffer are ever disjoint, 0 if not, and -1 on error. More... | |
int | ea_disjoint_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp, bool ever) |
Return 1 if a temporal circular buffer and a geometry are ever disjoint,0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_disjoint_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, bool ever) |
Return 1 if a temporal circular buffer and a circular buffer are ever disjoint, 0 if not, and -1 on error. More... | |
int | ea_disjoint_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, bool ever) |
Return 1 if a temporal circular buffer and a geometry are ever disjoint,0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_disjoint_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, bool ever) |
Return 1 if the temporal circular buffers are ever/always disjoint, 0 if not, and -1 on error or if the temporal circular buffers do not intersect in time. More... | |
int | ea_dwithin_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, double dist, bool ever, bool invert) |
Return 1 if a temporal circular buffer and a geometry are ever/always within the given distance, 0 if not, -1 on error or if the geometry is empty. More... | |
int | ea_dwithin_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, double dist, bool ever) |
Return 1 if two temporal circular buffers are ever/always within a distance, 0 if not, -1 on error or if the temporal circular buffers do not intersect on time. More... | |
int | ea_intersects_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp, bool ever) |
Return 1 if a circular buffer ever/always intersects a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | ea_intersects_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp, bool ever) |
Return 1 if a temporal circular buffer and a geometry intersect 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_intersects_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, bool ever) |
Return 1 if a temporal circular buffer ever/always intersects a circular buffer, 0 if not, and -1 on error. More... | |
int | ea_intersects_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, bool ever) |
Return 1 if a temporal circular buffer ever/always intersects a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_intersects_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, bool ever) |
Return 1 if a temporal circular buffer ever/always intersects another one, 0 if not, and -1 on error. More... | |
int | ea_spatialrel_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, Datum param, varfunc func, int numparam, bool ever, bool invert) |
Return true if a temporal circular buffer and a circular buffer ever/always satisfy a spatial relationship. More... | |
int | ea_spatialrel_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, Datum param, varfunc func, int numparam, bool ever, bool invert) |
Return true if a temporal circular buffer and a geometry ever/always satisfy a spatial relationship. More... | |
int | ea_spatialrel_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, datum_func2 func, bool ever, bool bbox_test) |
Return 1 if two temporal circular buffers ever/always satisfy a spatial relationship, 0 if not, and -1 on error. More... | |
int | ea_spatialrel_tcbufferinst_geo (const TInstant *inst, const GSERIALIZED *gs, Datum param, varfunc func, int numparam, bool invert) |
Return 1 if a temporal circular buffer instant and a geometry ever/always satisfy a spatial relationship. More... | |
int | ea_spatialrel_tcbufferseq_discstep_geo (const TSequence *seq, const GSERIALIZED *gs, Datum param, varfunc func, int numparam, bool ever, bool invert) |
Return 1 if a temporal circular buffer sequence with discrete or step interpolation and a geometry ever/always satisfy a spatial relationship. More... | |
int | ea_spatialrel_tcbufferseq_geo (const TSequence *seq, const GSERIALIZED *gs, Datum param, varfunc func, int numparam, bool ever, bool invert) |
Return 1 if a temporal circular buffer sequence and a geometry ever/always satisfy a spatial relationship (dispatch function) More... | |
int | ea_spatialrel_tcbufferseq_linear_geo (const TSequence *seq, const GSERIALIZED *gs, Datum param, varfunc func, int numparam, bool ever, bool invert) |
Return 1 if a temporal circular buffer sequence with linear interpolation and a geometry ever/always satisfy a spatial relationship. More... | |
int | ea_spatialrel_tcbufferseqset_geo (const TSequenceSet *ss, const GSERIALIZED *gs, Datum param, varfunc func, int numparam, bool ever, bool invert) |
Return 1 if a temporal circular buffer sequence set and a geometry ever/always satisfy a spatial relationship. More... | |
int | ea_touches_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp, bool ever) |
Return 1 if a temporal circular buffer ever/always touches a circular buffer, 0 if not, and -1 on error. More... | |
int | ea_touches_geo_tcbuffer (const GSERIALIZED *gs, const Temporal *temp, bool ever) |
Return 1 if a temporal circular buffer and a geometry ever touch, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_touches_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, bool ever) |
Return 1 if a temporal circular buffer ever/always touches a circular buffer, 0 if not, and -1 on error. More... | |
int | ea_touches_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, bool ever) |
Return 1 if a temporal circular buffer and a geometry ever touch, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ea_touches_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, bool ever) |
Return 1 if a temporal circular buffer ever/always touches another one, 0 if not, and -1 on error. More... | |
int | econtains_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp) |
Return 1 if a circular buffer ever contains a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | econtains_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer ever contains a circular buffer, 0 if not, and -1 on error. More... | |
int | econtains_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer ever contains a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ecovers_cbuffer_tcbuffer (const Cbuffer *cb, const Temporal *temp) |
Return 1 if a circular buffer ever covers a temporal circular buffer, 0 if not, and -1 on error. More... | |
int | ecovers_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer ever covers a circular buffer, 0 if not, and -1 on error. More... | |
int | ecovers_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer ever covers a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | ecovers_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if a temporal circular buffer ever covers another one, 0 if not, and -1 on error. More... | |
int | edisjoint_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer and a circular buffer are ever disjoint, 0 if not, and -1 on error. More... | |
int | edisjoint_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer and a geometry are ever disjoint, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | edisjoint_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if the temporal circular buffers are ever disjoint, 0 if not, and -1 on error or if the temporal circular buffers do not intersect in time. More... | |
int | edwithin_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb, double dist) |
Return 1 if a geometry and a temporal circular buffer are ever within the given distance, 0 if not, -1 on error. More... | |
int | edwithin_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs, double dist) |
Return 1 if a geometry and a temporal circular buffer are ever within the given distance, 0 if not, -1 on error or if the geometry is empty. More... | |
int | edwithin_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2, double dist) |
Return 1 if two temporal circular buffers are ever within a distance, 0 if not, -1 on error or if the temporal circular buffers do not intersect on time. More... | |
int | eintersects_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a circular buffer and a temporal circular buffer ever intersect, 0 if not, and -1 on error. More... | |
int | eintersects_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a geometry and a temporal circular buffer ever intersect, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | eintersects_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if the temporal circular buffers ever intersect, 0 if not, and -1 on error or if the temporal circular buffers do not intersect in time. More... | |
int | etouches_tcbuffer_cbuffer (const Temporal *temp, const Cbuffer *cb) |
Return 1 if a temporal circular buffer always touches a circular buffer, 0 if not, and -1 on error. More... | |
int | etouches_tcbuffer_geo (const Temporal *temp, const GSERIALIZED *gs) |
Return 1 if a temporal circular buffer ever touches a geometry, 0 if not, and -1 on error or if the geometry is empty. More... | |
int | etouches_tcbuffer_tcbuffer (const Temporal *temp1, const Temporal *temp2) |
Return 1 if a temporal circular buffer ever touches another one, 0 if not, and -1 on error. More... | |
int | spatialrel_geo_geo (const GSERIALIZED *gs1, const GSERIALIZED *gs2, Datum param, varfunc func, int numparam, bool invert) |
Return 1 if two geometries satisfy a spatial relationship. More... | |
static int | spatialrel_geo_geo_simple (const GSERIALIZED *gs1, const GSERIALIZED *gs2, Datum param, varfunc func, int numparam, bool invert) |
Return 1 if two geometries satisfy a spatial relationship. More... | |
Ever/always spatial relationships for temporal circular buffers.
These relationships compute the ever/always spatial relationship between the arguments and return a Boolean. These functions may be used for filtering purposes before applying the corresponding spatiotemporal relationship.
The following relationships are supported: econtains
, acontains
, ecovers
, acovers
, edisjoint
, adisjoint
, eintersects
, aintersects
, etouches
, atouches,
edwithin, and
adwithin`.