MobilityDB  1.0
Functions
time_aggfuncs.c File Reference

Aggregate functions for time types. More...

#include "general/time_aggfuncs.h"
#include <assert.h>
#include <libpq/pqformat.h>
#include <utils/memutils.h>
#include <utils/timestamp.h>
#include "general/skiplist.h"
#include "general/timestampset.h"
#include "general/period.h"
#include "general/periodset.h"
#include "general/timeops.h"
#include "general/temporaltypes.h"
#include "general/temporal_util.h"
Include dependency graph for time_aggfuncs.c:

Functions

TimestampTz * timestamp_agg (TimestampTz *times1, int count1, TimestampTz *times2, int count2, int *newcount)
 
Period ** period_agg (Period **periods1, int count1, Period **periods2, int count2, int *newcount)
 Generic aggregate function for periods. More...
 
Datum datum_sum_int32 (Datum l, Datum r)
 Returns the sum of the two arguments. More...
 
static SkipListtimestampset_agg_transfn (FunctionCallInfo fcinfo, SkipList *state, const TimestampSet *ts)
 Generic transition function for aggregating timestamp sets. More...
 
static SkipListperiod_agg_transfn (FunctionCallInfo fcinfo, SkipList *state, const Period *per)
 Generic transition function for aggregating temporal values of sequence subtype. More...
 
static SkipListperiodset_agg_transfn (FunctionCallInfo fcinfo, SkipList *state, const PeriodSet *ps)
 Generic transition function for aggregating period set values. More...
 
SkipListtime_agg_combinefn (FunctionCallInfo fcinfo, SkipList *state1, SkipList *state2)
 Generic combine function for aggregating time values. More...
 
PGDLLEXPORT Datum timestampset_extent_transfn (PG_FUNCTION_ARGS)
 Transition function for temporal extent aggregation of timestamp set values with period bounding box. More...
 
PGDLLEXPORT Datum period_extent_transfn (PG_FUNCTION_ARGS)
 Transition function for temporal extent aggregation of period values with period bounding box. More...
 
PGDLLEXPORT Datum periodset_extent_transfn (PG_FUNCTION_ARGS)
 Transition function for temporal extent aggregation of period set values with period bounding box. More...
 
PGDLLEXPORT Datum timestampset_tunion_transfn (PG_FUNCTION_ARGS)
 Transition function for union aggregate of timestamp sets. More...
 
PGDLLEXPORT Datum period_tunion_transfn (PG_FUNCTION_ARGS)
 Transition function for union aggregate of periods. More...
 
PGDLLEXPORT Datum periodset_tunion_transfn (PG_FUNCTION_ARGS)
 Transition function for union aggregate of period sets. More...
 
static TInstant ** timestampset_transform_tcount (const TimestampSet *ts)
 Transform a timestamp set value into a temporal integer value for performing temporal count aggregation. More...
 
static TSequenceperiod_transform_tcount (const Period *p)
 Transform a period value into a temporal integer value for performing temporal count aggregation. More...
 
static TSequence ** periodset_transform_tcount (const PeriodSet *ps)
 Transform a period set value into a temporal integer value for performing temporal count aggregation. More...
 
static void ensure_same_timetype_skiplist (SkipList *state, int16 subtype)
 
PGDLLEXPORT Datum timestampset_tcount_transfn (PG_FUNCTION_ARGS)
 Transition function for temporal count aggregate of timestamp sets. More...
 
PGDLLEXPORT Datum period_tcount_transfn (PG_FUNCTION_ARGS)
 Transition function for temporal count aggregate of periods. More...
 
PGDLLEXPORT Datum periodset_tcount_transfn (PG_FUNCTION_ARGS)
 Transition function for temporal count aggregate of period sets. More...
 
PGDLLEXPORT Datum time_extent_combinefn (PG_FUNCTION_ARGS)
 Combine function for temporal extent aggregation. More...
 
PGDLLEXPORT Datum time_tunion_combinefn (PG_FUNCTION_ARGS)
 Combine function for union aggregate of time types. More...
 
PGDLLEXPORT Datum timestamp_tunion_finalfn (PG_FUNCTION_ARGS)
 Final function for union aggregation of timestamp set values. More...
 
PGDLLEXPORT Datum period_tunion_finalfn (PG_FUNCTION_ARGS)
 Final function for union aggregation of period (set) values. More...
 

Detailed Description

Aggregate functions for time types.