PostGIS  2.3.8dev-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 966 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().

967 {
968  bool retval;
969 
970  POSTGIS_DEBUGF(4, "[GIST] leaf consistent, strategy [%d], count[%i]",
971  strategy, g2d_counter_leaf++);
972 
973  switch (strategy)
974  {
975 
976  /* Basic overlaps */
977  case RTOverlapStrategyNumber:
978  retval = (bool) box2df_overlaps(key, query);
979  break;
980  case RTSameStrategyNumber:
981  retval = (bool) box2df_equals(key, query);
982  break;
983  case RTContainsStrategyNumber:
984  case RTOldContainsStrategyNumber:
985  retval = (bool) box2df_contains(key, query);
986  break;
987  case RTContainedByStrategyNumber:
988  case RTOldContainedByStrategyNumber:
989  retval = (bool) box2df_contains(query, key);
990  break;
991 
992  /* To one side */
993  case RTAboveStrategyNumber:
994  retval = (bool) box2df_above(key, query);
995  break;
996  case RTBelowStrategyNumber:
997  retval = (bool) box2df_below(key, query);
998  break;
999  case RTRightStrategyNumber:
1000  retval = (bool) box2df_right(key, query);
1001  break;
1002  case RTLeftStrategyNumber:
1003  retval = (bool) box2df_left(key, query);
1004  break;
1005 
1006  /* Overlapping to one side */
1007  case RTOverAboveStrategyNumber:
1008  retval = (bool) box2df_overabove(key, query);
1009  break;
1010  case RTOverBelowStrategyNumber:
1011  retval = (bool) box2df_overbelow(key, query);
1012  break;
1013  case RTOverRightStrategyNumber:
1014  retval = (bool) box2df_overright(key, query);
1015  break;
1016  case RTOverLeftStrategyNumber:
1017  retval = (bool) box2df_overleft(key, query);
1018  break;
1019 
1020  default:
1021  retval = FALSE;
1022  }
1023 
1024  return (retval);
1025 }
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: