MobilityDB 1.3
Loading...
Searching...
No Matches
Functions
temporal_waggfuncs.c File Reference

General aggregate functions for temporal types. More...

#include "temporal/temporal_aggfuncs.h"
#include <assert.h>
#include <meos.h>
#include <meos_internal.h>
#include "temporal/doublen.h"
#include "temporal/type_util.h"

Functions

static int tcontseq_extend (const TSequence *seq, const Interval *interv, bool min, TSequence **result)
 Extend a temporal sequence by a time interval. More...
 
static int tcontseq_transform_wcount (const TSequence *seq, const Interval *interv, TSequence **result)
 Transform a temporal number sequence by a time interval. More...
 
static int tdiscseq_extend (const TSequence *seq, const Interval *interv, TSequence **result)
 Extend a temporal discrete sequence by a time interval. More...
 
static int tdiscseq_transform_wcount (const TSequence *seq, const Interval *interv, TSequence **result)
 Transform a temporal number discrete sequence by a time interval. More...
 
TSequence ** temporal_extend (const Temporal *temp, const Interval *interv, bool min, int *count)
 Extend a temporal value by a time interval. More...
 
TSequence ** temporal_transform_wcount (const Temporal *temp, const Interval *interv, int *count)
 Transform a temporal number by a time interval. More...
 
SkipListtemporal_wagg_transfn (SkipList *state, const Temporal *temp, const Interval *interv, datum_func2 func, bool min, bool crossings)
 Generic moving window transition function for min, max, and sum aggregation. More...
 
SkipListtemporal_wagg_transform_transfn (SkipList *state, const Temporal *temp, const Interval *interv, datum_func2 func, TSequence **(*transform)(const Temporal *, const Interval *, int *))
 Transition function for moving window count and average aggregation for temporal values. More...
 
static int tinstant_extend (const TInstant *inst, const Interval *interv, TSequence **result)
 Extend a temporal instant by a time interval. More...
 
static int tinstant_transform_wcount (const TInstant *inst, const Interval *interv, TSequence **result)
 Transform a temporal number instant by a time interval. More...
 
static TSequencetinstant_transform_wcount_iter (TimestampTz lower, TimestampTz upper, bool lower_inc, bool upper_inc, const Interval *interv)
 Return a sequence with a value 1 by extending the two bounds by a time interval (iterator function) More...
 
static int tintseq_transform_wavg (const TSequence *seq, const Interval *interv, TSequence **result)
 Transform a temporal integer sequence into a temporal double and extend it by a time interval. More...
 
static int tintseqset_transform_wavg (const TSequenceSet *ss, const Interval *interv, TSequence **result)
 Transform a temporal integer sequence set into a temporal double and extend it by a time interval. More...
 
TSequence ** tnumber_transform_wavg (const Temporal *temp, const Interval *interv, int *count)
 Transform a temporal integer sequence set into a temporal double and extend it by a time interval. More...
 
static int tnumberinst_transform_wavg (const TInstant *inst, const Interval *interv, TSequence **result)
 Transform a temporal number into a temporal double and extend it by a time interval. More...
 
static int tnumberseq_disc_transform_wavg (const TSequence *seq, const Interval *interv, TSequence **result)
 Transform a temporal number into a temporal double and extend it by a time interval. More...
 
static int tsequenceset_extend (const TSequenceSet *ss, const Interval *interv, bool min, TSequence **result)
 Extend a temporal sequence set by a time interval. More...
 
static int tsequenceset_transform_wcount (const TSequenceSet *ss, const Interval *interv, TSequence **result)
 Transform a temporal number sequence set by a time interval. More...
 

Detailed Description

General aggregate functions for temporal types.