Hermes
|
The implementation of SegmentST. More...
#include "../../h/SpatioTemporal/SegmentST/Interpolation.h"
#include "../../h/SpatioTemporal/SegmentST/Properties.h"
#include "../../h/Temporal/SessionParameters.h"
#include "../../h/Temporal/Period/RelationalOperators.h"
#include "../../h/Temporal/Period/Properties.h"
#include "../../h/Temporal/Period/Interactions.h"
#include "../../h/Spatial/SegmentSP/RelationalOperators.h"
#include "../../h/Spatial/SegmentSP/Properties.h"
#include "../../h/Spatial/SegmentSP/Interactions.h"
#include "../../h/Spatial/BoxSP/RelationalOperators.h"
#include "../../h/Spatial/PointSP/Distance.h"
#include "../../h/SessionParameters.h"
#include "../../h/Utilities/Utilities.h"
#include "../../h/Utilities/MSVCWorkarounds.h"
#include <funcapi.h>
#include <access/htup_details.h>
Functions | |
PointSP * | atInstantSPSegmentST (const SegmentST *segment, Timestamp ts, bool checkContainment, PointSP *result) |
PointST * | atInstantSegmentST (const SegmentST *segment, Timestamp ts, bool checkContainment, PointST *result) |
PGDLLEXPORT Datum | atInstantSPSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atInstantSPSegmentSTV1) | |
PGDLLEXPORT Datum | atInstantSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atInstantSegmentSTV1) | |
int32 | atPeriodSPSegmentST (const SegmentST *segment, const Period *period, SegmentSP *segmentAt, PointSP *pointAt) |
int32 | atPeriodSegmentST (const SegmentST *segment, const Period *period, SegmentST *segmentAt, PointST *pointAt) |
PGDLLEXPORT Datum | atPeriodSPSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atPeriodSPSegmentSTV1) | |
PGDLLEXPORT Datum | atPeriodSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atPeriodSegmentSTV1) | |
Timestamp * | atPointTSegmentST (const SegmentST *segment, const PointSP *point, bool checkContainment, Timestamp *result) |
PointST * | atPointSegmentST (const SegmentST *segment, const PointSP *point, bool checkContainment, PointST *result) |
PGDLLEXPORT Datum | atPointTSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atPointTSegmentSTV1) | |
PGDLLEXPORT Datum | atPointSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atPointSegmentSTV1) | |
int32 | atBoxTSegmentST (const SegmentST *segment, const BoxSP *box, Period *periodAt, Timestamp *tsAt) |
int32 | atBoxSegmentST (const SegmentST *segment, const BoxSP *box, SegmentST *segmentAt, PointST *pointAt) |
PGDLLEXPORT Datum | atBoxTSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atBoxTSegmentSTV1) | |
PGDLLEXPORT Datum | atBoxSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atBoxSegmentSTV1) | |
int32 | atBoxSTSegmentST (const SegmentST *segment, const BoxST *box, SegmentST *segmentAt, PointST *pointAt) |
PGDLLEXPORT Datum | atBoxSTSegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (atBoxSTSegmentSTV1) | |
PointST * | intersectionPointSegmentST_SegmentST (const SegmentST *segmentA, const SegmentST *segmentB, PointST *result) |
PGDLLEXPORT Datum | intersectionPointSegmentST_SegmentSTV1 (PG_FUNCTION_ARGS) |
PG_FUNCTION_INFO_V1 (intersectionPointSegmentST_SegmentSTV1) | |
The implementation of SegmentST.
These functions are documented in the SegmentST/Interpolation.h
int32 atBoxSegmentST | ( | const SegmentST * | segment, |
const BoxSP * | box, | ||
SegmentST * | segmentAt, | ||
PointST * | pointAt | ||
) |
References atPointSegmentST(), atPointTSegmentST(), containedSegmentSP_BoxSP(), SegmentSP::e, Period::e, SegmentSP::i, Period::i, intersectionSegmentSP_BoxSP(), isStoppedSegmentST(), SegmentST::sp, and SegmentST::t.
Referenced by atBoxSegmentSTV1(), and atBoxSTSegmentST().
PGDLLEXPORT Datum atBoxSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
int32 atBoxSTSegmentST | ( | const SegmentST * | segment, |
const BoxST * | box, | ||
SegmentST * | segmentAt, | ||
PointST * | pointAt | ||
) |
References atBoxSegmentST(), atPeriodSegmentST(), containsPeriod_Timestamp(), BoxST::sp, PointST::t, and BoxST::t.
Referenced by atBoxSTSegmentSTV1(), and intersectsSegmentST_BoxST().
PGDLLEXPORT Datum atBoxSTSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
int32 atBoxTSegmentST | ( | const SegmentST * | segment, |
const BoxSP * | box, | ||
Period * | periodAt, | ||
Timestamp * | tsAt | ||
) |
References atPointTSegmentST(), containedSegmentSP_BoxSP(), SegmentSP::e, Period::e, SegmentSP::i, Period::i, intersectionSegmentSP_BoxSP(), isStoppedSegmentST(), SegmentST::sp, and SegmentST::t.
Referenced by atBoxTSegmentSTV1().
PGDLLEXPORT Datum atBoxTSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
PointST* atInstantSegmentST | ( | const SegmentST * | segment, |
Timestamp | ts, | ||
bool | checkContainment, | ||
PointST * | result | ||
) |
References atInstantSPSegmentST(), PointST::sp, and PointST::t.
Referenced by atInstantSegmentSTV1(), and atPeriodSegmentST().
PGDLLEXPORT Datum atInstantSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
PointSP* atInstantSPSegmentST | ( | const SegmentST * | segment, |
Timestamp | ts, | ||
bool | checkContainment, | ||
PointSP * | result | ||
) |
References containsPeriod_Timestamp(), differenceInSeconds(), SegmentSP::e, Period::e, SegmentSP::i, Period::i, lengthSegmentSP(), round(), SegmentST::sp, SegmentST::t, PointSP::x, PointSP::y, and zeroTolerance.
Referenced by atInstantSegmentST(), atInstantSPSegmentSTV1(), atPeriodSegmentST(), atPeriodSPSegmentST(), containsSegmentST_PointST(), and TrapezoidalSegmentST().
PGDLLEXPORT Datum atInstantSPSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
int32 atPeriodSegmentST | ( | const SegmentST * | segment, |
const Period * | period, | ||
SegmentST * | segmentAt, | ||
PointST * | pointAt | ||
) |
References atInstantSegmentST(), atInstantSPSegmentST(), containsPeriod_Period(), SegmentSP::e, Period::e, SegmentSP::i, Period::i, intersectionPeriod_Period(), isPunctalPeriod(), isStoppedSegmentST(), PointST::sp, SegmentST::sp, PointST::t, and SegmentST::t.
Referenced by atBoxSTSegmentST(), and atPeriodSegmentSTV1().
PGDLLEXPORT Datum atPeriodSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
int32 atPeriodSPSegmentST | ( | const SegmentST * | segment, |
const Period * | period, | ||
SegmentSP * | segmentAt, | ||
PointSP * | pointAt | ||
) |
References atInstantSPSegmentST(), containsPeriod_Period(), SegmentSP::e, Period::e, SegmentSP::i, Period::i, intersectionPeriod_Period(), isPunctalPeriod(), isStoppedSegmentST(), SegmentST::sp, and SegmentST::t.
Referenced by atPeriodSPSegmentSTV1(), and withinDistanceSegmentST_RangeST().
PGDLLEXPORT Datum atPeriodSPSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
PointST* atPointSegmentST | ( | const SegmentST * | segment, |
const PointSP * | point, | ||
bool | checkContainment, | ||
PointST * | result | ||
) |
References atPointTSegmentST(), PointST::sp, and PointST::t.
Referenced by atBoxSegmentST(), and atPointSegmentSTV1().
PGDLLEXPORT Datum atPointSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
Timestamp* atPointTSegmentST | ( | const SegmentST * | segment, |
const PointSP * | point, | ||
bool | checkContainment, | ||
Timestamp * | result | ||
) |
References averageSpeedSegmentST(), containsSegmentSP_PointSP(), distancePointSP_PointSP(), SegmentSP::i, Period::i, roundTimestamp(), SegmentST::sp, SegmentST::t, timestampPlusSeconds(), and zeroTolerance.
Referenced by atBoxSegmentST(), atBoxTSegmentST(), atPointSegmentST(), atPointTSegmentSTV1(), and intersectionPointSegmentST_SegmentST().
PGDLLEXPORT Datum atPointTSegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
PointST* intersectionPointSegmentST_SegmentST | ( | const SegmentST * | segmentA, |
const SegmentST * | segmentB, | ||
PointST * | result | ||
) |
References atPointTSegmentST(), differenceInSeconds(), intersectionSegmentSP_SegmentSP(), PointST::sp, SegmentST::sp, PointST::t, and temporalTolerance.
Referenced by intersectionPointSegmentST_SegmentSTV1(), and intersectsSegmentST_SegmentST().
PGDLLEXPORT Datum intersectionPointSegmentST_SegmentSTV1 | ( | PG_FUNCTION_ARGS | ) |
PG_FUNCTION_INFO_V1 | ( | atInstantSPSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atInstantSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atPeriodSPSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atPeriodSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atPointTSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atPointSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atBoxTSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atBoxSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | atBoxSTSegmentSTV1 | ) |
PG_FUNCTION_INFO_V1 | ( | intersectionPointSegmentST_SegmentSTV1 | ) |