PostGIS  2.2.7dev-r@@SVN_REVISION@@
static bool gserialized_gist_consistent_leaf_2d ( BOX2DF *  key,
BOX2DF *  query,
StrategyNumber  strategy 
)
inlinestatic

Definition at line 861 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().

862 {
863  bool retval;
864 
865  POSTGIS_DEBUGF(4, "[GIST] leaf consistent, strategy [%d], count[%i]",
866  strategy, g2d_counter_leaf++);
867 
868  switch (strategy)
869  {
870 
871  /* Basic overlaps */
872  case RTOverlapStrategyNumber:
873  retval = (bool) box2df_overlaps(key, query);
874  break;
875  case RTSameStrategyNumber:
876  retval = (bool) box2df_equals(key, query);
877  break;
878  case RTContainsStrategyNumber:
879  case RTOldContainsStrategyNumber:
880  retval = (bool) box2df_contains(key, query);
881  break;
882  case RTContainedByStrategyNumber:
883  case RTOldContainedByStrategyNumber:
884  retval = (bool) box2df_contains(query, key);
885  break;
886 
887  /* To one side */
888  case RTAboveStrategyNumber:
889  retval = (bool) box2df_above(key, query);
890  break;
891  case RTBelowStrategyNumber:
892  retval = (bool) box2df_below(key, query);
893  break;
894  case RTRightStrategyNumber:
895  retval = (bool) box2df_right(key, query);
896  break;
897  case RTLeftStrategyNumber:
898  retval = (bool) box2df_left(key, query);
899  break;
900 
901  /* Overlapping to one side */
902  case RTOverAboveStrategyNumber:
903  retval = (bool) box2df_overabove(key, query);
904  break;
905  case RTOverBelowStrategyNumber:
906  retval = (bool) box2df_overbelow(key, query);
907  break;
908  case RTOverRightStrategyNumber:
909  retval = (bool) box2df_overright(key, query);
910  break;
911  case RTOverLeftStrategyNumber:
912  retval = (bool) box2df_overleft(key, query);
913  break;
914 
915  default:
916  retval = FALSE;
917  }
918 
919  return (retval);
920 }
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_contains(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
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: