![]() |
MobilityDB 1.3
|
#include <postgres.h>
#include <meos.h>
#include "temporal/meos_catalog.h"
#include "temporal/temporal.h"
Go to the source code of this file.
Functions | |
void | bbox_expand (const void *box1, void *box2, meosType temptype) |
Expand the second bounding box with the first one. More... | |
bool | ensure_increasing_timestamps (const TInstant *inst1, const TInstant *inst2, bool strict) |
Ensure that the timestamp of the first temporal instant is smaller (or equal if the merge parameter is true) than the one of the second temporal instant. More... | |
bool | ensure_valid_tinstarr (const TInstant **instants, int count, bool merge, interpType interp) |
Ensure that all temporal instants of the array are valid. More... | |
bool | ensure_valid_tinstarr_common (const TInstant **instants, int count, bool lower_inc, bool upper_inc, interpType interp) |
Ensure the validity of the arguments when creating a temporal sequence. More... | |
bool | float_collinear (double x1, double x2, double x3, double ratio) |
Basic functions for temporal sequences. More... | |
double | floatsegm_interpolate (double value1, double value2, long double value) |
Return a float interpolated from a float segment with respect to a fraction of its total length. More... | |
long double | floatsegm_locate (double value1, double value2, double value) |
Return a float in (0,1) if a float segment intersects a float with respect to an epsilon value, return -1.0 if the value is not located in the segment or if it is approximately equal to the start or the end value. More... | |
bool | intersection_tcontseq_tdiscseq (const TSequence *seq1, const TSequence *seq2, TSequence **inter1, TSequence **inter2) |
Temporally intersect two temporal sequences. More... | |
bool | intersection_tdiscseq_tcontseq (const TSequence *is, const TSequence *seq2, TSequence **inter1, TSequence **inter2) |
Temporally intersect two temporal values. More... | |
bool | intersection_tdiscseq_tdiscseq (const TSequence *seq1, const TSequence *seq2, TSequence **inter1, TSequence **inter2) |
Temporally intersect two temporal discrete sequences. More... | |
bool | intersection_tinstant_tsequence (const TInstant *inst, const TSequence *seq, TInstant **inter1, TInstant **inter2) |
Temporally intersect two temporal values. More... | |
bool | intersection_tsequence_tinstant (const TSequence *seq, const TInstant *inst, TInstant **inter1, TInstant **inter2) |
Temporally intersect two temporal sequences. More... | |
bool | synchronize_tsequence_tsequence (const TSequence *seq1, const TSequence *seq2, TSequence **sync1, TSequence **sync2, bool interpoint) |
Synchronize two temporal sequences. More... | |
int | tcontseq_find_timestamptz (const TSequence *seq, TimestampTz t) |
Return the index of the segment of a temporal continuous sequence containing a timestamp using binary search. More... | |
int | tdiscseq_find_timestamptz (const TSequence *seq, TimestampTz t) |
Return the index of a timestamp in a temporal discrete sequence value using binary search. More... | |
int | tfloatsegm_intersection_value (Datum start, Datum end, Datum value, TimestampTz lower, TimestampTz upper, TimestampTz *t) |
Return true if the segment of a temporal number intersects the base value at a timestamptz. More... | |
TInstant ** | tinstarr_normalize (const TInstant **instants, interpType interp, int count, int *newcount) |
Normalize the array of temporal instants. More... | |
int | tnumbersegm_intersection (Datum start1, Datum end1, Datum start2, Datum end2, meosType basetype, TimestampTz lower, TimestampTz upper, TimestampTz *t) |
Compute the intersection, if any, of two segments of temporal sequences. More... | |
double | tnumberseq_cont_twavg (const TSequence *seq) |
Return the time-weighted average of a temporal sequence number. More... | |
void | tnumberseq_shift_scale_value_iter (TSequence *seq, Datum origin, Datum delta, bool hasdelta, double scale) |
Shift and/or scale the values of the instants of a temporal sequence (iterator function) More... | |
int | tsegment_intersection (Datum start1, Datum end1, Datum start2, Datum end2, meosType temptype, TimestampTz lower, TimestampTz upper, TimestampTz *t1, TimestampTz *t2) |
Return true if two segments of a temporal sequence intersect at a timestamptz. More... | |
int | tsegment_intersection_value (Datum start, Datum end, Datum value, meosType temptype, TimestampTz lower, TimestampTz upper, TimestampTz *t1, TimestampTz *t2) |
Return true if a segment of a temporal sequence intersects a base value at a timestamptz. More... | |
Datum | tsegment_value_at_timestamptz (Datum start, Datum end, meosType temptype, TimestampTz lower, TimestampTz upper, TimestampTz t) |
Return the base value of the segment of a temporal sequence at a timestamptz. More... | |
TSequence ** | tseqarr2_to_tseqarr (TSequence ***sequences, int *countseqs, int count, int totalseqs) |
Return an array of temporal sequences converted from an array of arrays of temporal sequences. More... | |
TSequence * | tsequence_join (const TSequence *seq1, const TSequence *seq2, bool removelast, bool removefirst) |
Join two temporal sequences. More... | |
bool | tsequence_join_test (const TSequence *seq1, const TSequence *seq2, bool *removelast, bool *removefirst) |
Test whether two sequences can be joined during normalization. More... | |
TSequence * | tsequence_make_exp1 (const TInstant **instants, int count, int maxcount, bool lower_inc, bool upper_inc, interpType interp, bool normalize, void *bbox) |
Return a temporal sequence from an array of temporal instants. More... | |
bool | tsequence_make_valid (const TInstant **instants, int count, bool lower_inc, bool upper_inc, interpType interp) |
Ensure the validity of the arguments when creating a temporal sequence. More... | |
bool | tsequence_norm_test (Datum value1, Datum value2, Datum value3, meosType basetype, interpType interp, TimestampTz t1, TimestampTz t2, TimestampTz t3) |
Test whether we can remove the middle instant among 3 consecutive ones during normalization. More... | |
int | tsequence_segments_iter (const TSequence *seq, TSequence **result) |
Return the array of segments of a temporal sequence (iterator function) More... | |
void | tsequence_shift_scale_time_iter (TSequence *seq, TimestampTz delta, double scale) |
Shift and/or scale the timestamps of the instants of a temporal sequence (iterator function) More... | |
int | tsequence_timestamps_iter (const TSequence *seq, TimestampTz *result) |
Return the array of timestamptz values of a temporal sequence (iterator function) More... | |
char * | tsequence_to_string (const TSequence *seq, int maxdd, bool component, outfunc value_out) |
Return the Well-Known Text (WKT) representation of a temporal sequence. More... | |
TSequenceSet * | tstepseq_to_linear (const TSequence *seq) |
Return a temporal sequence with continuous base type transformed from step to linear interpolation. More... | |
int | tstepseq_to_linear_iter (const TSequence *seq, TSequence **result) |
Return a temporal sequence with continuous base type transformed from step to linear interpolation (iterator function) More... | |