MobilityDB 1.1
Functions
tpoint_tile.c File Reference
#include <assert.h>
#include <postgres.h>
#include <utils/timestamp.h>
#include <liblwgeom.h>
#include <meos.h>
#include <meos_internal.h>
#include "general/temporaltypes.h"
#include "general/temporal_tile.h"
#include "point/tpoint_spatialfuncs.h"
#include "point/tpoint_tile.h"
Include dependency graph for tpoint_tile.c:

Functions

static bool bitmatrix_get (const BitMatrix *bm, int *coords)
 Get the value of the bit in the bit matrix. More...
 
BitMatrixbitmatrix_make (int *count, int numdims)
 Functions for spatial and spatiotemporal tiles. More...
 
static void bitmatrix_set_cell (BitMatrix *bm, int *coords, bool value)
 Set the value of the bit in the bit matrix. More...
 
static void bresenham_bm (BitMatrix *bm, int *coords1, int *coords2, int numdims)
 Set in the bit matrix the bits of the tiles connecting with a line the two input tiles. More...
 
STBoxstbox_tile_list (STBox *bounds, double size, const Interval *duration, GSERIALIZED *sorigin, TimestampTz torigin, int **no_cells)
 Generate a multidimensional grid for temporal points. More...
 
void stbox_tile_set (double x, double y, double z, TimestampTz t, double size, int64 tunits, bool hasz, bool hast, int32 srid, STBox *result)
 Generate a tile from the current state of the multidimensional grid. More...
 
bool stbox_tile_state_get (STboxGridState *state, STBox *box)
 Get the current tile of the multidimensional grid. More...
 
STboxGridStatestbox_tile_state_make (const Temporal *temp, const STBox *box, double size, int64 tunits, POINT3DZ sorigin, TimestampTz torigin)
 Create the initial state that persists across multiple calls of the function. More...
 
void stbox_tile_state_next (STboxGridState *state)
 Increment the current state to the next tile of the multidimensional grid. More...
 
static void tcontseq_set_tiles (const TSequence *seq, bool hasz, bool hast, const STboxGridState *state, BitMatrix *bm)
 Set the bit corresponding to the tiles intersecting the temporal point. More...
 
static void tdiscseq_set_tiles (const TSequence *seq, bool hasz, bool hast, const STboxGridState *state, BitMatrix *bm)
 Set the bit corresponding to the tiles intersecting the temporal point. More...
 
static void tile_get_coords (int *coords, double x, double y, double z, TimestampTz t, const STboxGridState *state)
 Transform the minimum values of a tile into matrix coordinates. More...
 
void tpoint_set_tiles (const Temporal *temp, const STboxGridState *state, BitMatrix *bm)
 Set the bit corresponding to the tiles intersecting the temporal point. More...
 
static void tpointinst_get_coords (int *coords, const TInstant *inst, bool hasz, bool hast, const STboxGridState *state)
 Get the coordinates of the tile corresponding the temporal instant point. More...
 
static void tpointinst_set_tiles (const TInstant *inst, bool hasz, bool hast, const STboxGridState *state, BitMatrix *bm)
 Set the bit corresponding to the tiles intersecting the temporal point. More...
 
static void tpointseqset_set_tiles (const TSequenceSet *ss, bool hasz, bool hast, const STboxGridState *state, BitMatrix *bm)
 Set the bit corresponding to the tiles intersecting the temporal point. More...