PostGIS  2.4.9dev-r@@SVN_REVISION@@

◆ gserialized_gist_consistent_leaf_2d()

static bool gserialized_gist_consistent_leaf_2d ( BOX2DF *  key,
BOX2DF *  query,
StrategyNumber  strategy 
)
inlinestatic

Definition at line 1001 of file gserialized_gist_2d.c.

References box2df_above(), box2df_below(), box2df_contains(), box2df_equals(), box2df_left(), box2df_overabove(), box2df_overbelow(), box2df_overlaps(), box2df_overleft(), box2df_overright(), box2df_right(), and FALSE.

Referenced by gserialized_gist_consistent_2d().

1002 {
1003  bool retval;
1004 
1005  POSTGIS_DEBUGF(4, "[GIST] leaf consistent, strategy [%d], count[%i]",
1006  strategy, g2d_counter_leaf++);
1007 
1008  switch (strategy)
1009  {
1010 
1011  /* Basic overlaps */
1012  case RTOverlapStrategyNumber:
1013  retval = (bool) box2df_overlaps(key, query);
1014  break;
1015  case RTSameStrategyNumber:
1016  retval = (bool) box2df_equals(key, query);
1017  break;
1018  case RTContainsStrategyNumber:
1019  case RTOldContainsStrategyNumber:
1020  retval = (bool) box2df_contains(key, query);
1021  break;
1022  case RTContainedByStrategyNumber:
1023  case RTOldContainedByStrategyNumber:
1024  retval = (bool) box2df_contains(query, key);
1025  break;
1026 
1027  /* To one side */
1028  case RTAboveStrategyNumber:
1029  retval = (bool) box2df_above(key, query);
1030  break;
1031  case RTBelowStrategyNumber:
1032  retval = (bool) box2df_below(key, query);
1033  break;
1034  case RTRightStrategyNumber:
1035  retval = (bool) box2df_right(key, query);
1036  break;
1037  case RTLeftStrategyNumber:
1038  retval = (bool) box2df_left(key, query);
1039  break;
1040 
1041  /* Overlapping to one side */
1042  case RTOverAboveStrategyNumber:
1043  retval = (bool) box2df_overabove(key, query);
1044  break;
1045  case RTOverBelowStrategyNumber:
1046  retval = (bool) box2df_overbelow(key, query);
1047  break;
1048  case RTOverRightStrategyNumber:
1049  retval = (bool) box2df_overright(key, query);
1050  break;
1051  case RTOverLeftStrategyNumber:
1052  retval = (bool) box2df_overleft(key, query);
1053  break;
1054 
1055  default:
1056  retval = FALSE;
1057  }
1058 
1059  return (retval);
1060 }
static bool box2df_overlaps(const BOX2DF *a, const BOX2DF *b)
static bool box2df_left(const BOX2DF *a, const BOX2DF *b)
static bool box2df_below(const BOX2DF *a, const BOX2DF *b)
static bool box2df_right(const BOX2DF *a, const BOX2DF *b)
static bool box2df_above(const BOX2DF *a, const BOX2DF *b)
static bool box2df_overright(const BOX2DF *a, const BOX2DF *b)
static bool box2df_overabove(const BOX2DF *a, const BOX2DF *b)
static bool box2df_overbelow(const BOX2DF *a, const BOX2DF *b)
static bool box2df_overleft(const BOX2DF *a, const BOX2DF *b)
#define FALSE
Definition: dbfopen.c:168
bool box2df_contains(const BOX2DF *a, const BOX2DF *b)
static bool box2df_equals(const BOX2DF *a, const BOX2DF *b)
Here is the call graph for this function:
Here is the caller graph for this function: