BMKPoiSearch.h 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /*
  2. * BMKPoiSearch.h
  3. * BMapKit
  4. *
  5. * Copyright 2011 Baidu Inc. All rights reserved.
  6. *
  7. */
  8. #import <Foundation/Foundation.h>
  9. #import "BMKPoiSearchType.h"
  10. #import "BMKPoiSearchOption.h"
  11. #import "BMKSearchBase.h"
  12. @protocol BMKPoiSearchDelegate;
  13. ///搜索服务
  14. @interface BMKPoiSearch : BMKSearchBase
  15. /// 检索模块的Delegate,此处记得不用的时候需要置nil,否则影响内存的释放
  16. @property (nonatomic, weak) id<BMKPoiSearchDelegate> delegate;
  17. /**
  18. *城市POI检索
  19. *异步函数,返回结果在BMKPoiSearchDelegate的onGetPoiResult通知
  20. *@param option 城市内搜索的搜索参数类(BMKCitySearchOption)
  21. *@return 成功返回YES,否则返回NO
  22. */
  23. - (BOOL)poiSearchInCity:(BMKCitySearchOption*)option;
  24. /**
  25. *根据范围和检索词发起范围检索
  26. *异步函数,返回结果在BMKPoiSearchDelegate的onGetPoiResult通知
  27. *@param option 范围搜索的搜索参数类(BMKBoundSearchOption)
  28. *@return 成功返回YES,否则返回NO
  29. */
  30. - (BOOL)poiSearchInbounds:(BMKBoundSearchOption*)option;
  31. /**
  32. *根据中心点、半径和检索词发起周边检索
  33. *异步函数,返回结果在BMKPoiSearchDelegate的onGetPoiResult通知
  34. *@param option 周边搜索的搜索参数类(BMKNearbySearchOption)
  35. *@param index 页码,如果是第一次发起搜索,填0,根据返回的结果可以去获取第n页的结果,页码从0开始
  36. *@return 成功返回YES,否则返回NO
  37. */
  38. - (BOOL)poiSearchNearBy:(BMKNearbySearchOption*)option;
  39. /**
  40. *根据poi uid 发起poi详情检索
  41. *异步函数,返回结果在BMKPoiSearchDelegate的onGetPoiDetailResult通知
  42. *@param option poi详情检索参数类(BMKPoiDetailSearchOption)
  43. *@return 成功返回YES,否则返回NO
  44. */
  45. - (BOOL)poiDetailSearch:(BMKPoiDetailSearchOption*)option;
  46. /**
  47. *poi室内检索
  48. *异步函数,返回结果在BMKPoiSearchDelegate的onGetPoiIndoorResult通知
  49. *@param option poi室内检索参数类(BMKPoiIndoorSearchOption)
  50. *@return 成功返回YES,否则返回NO
  51. */
  52. - (BOOL)poiIndoorSearch:(BMKPoiIndoorSearchOption*)option;
  53. @end
  54. ///搜索delegate,用于获取搜索结果
  55. @protocol BMKPoiSearchDelegate<NSObject>
  56. @optional
  57. /**
  58. *返回POI搜索结果
  59. *@param searcher 搜索对象
  60. *@param poiResult 搜索结果列表
  61. *@param errorCode 错误号,@see BMKSearchErrorCode
  62. */
  63. - (void)onGetPoiResult:(BMKPoiSearch*)searcher result:(BMKPoiResult*)poiResult errorCode:(BMKSearchErrorCode)errorCode;
  64. /**
  65. *返回POI详情搜索结果
  66. *@param searcher 搜索对象
  67. *@param poiDetailResult 详情搜索结果
  68. *@param errorCode 错误号,@see BMKSearchErrorCode
  69. */
  70. - (void)onGetPoiDetailResult:(BMKPoiSearch*)searcher result:(BMKPoiDetailResult*)poiDetailResult errorCode:(BMKSearchErrorCode)errorCode;
  71. /**
  72. *返回POI室内搜索结果
  73. *@param searcher 搜索对象
  74. *@param poiIndoorResult 搜索结果列表
  75. *@param errorCode 错误号,@see BMKSearchErrorCode
  76. */
  77. - (void)onGetPoiIndoorResult:(BMKPoiSearch*)searcher result:(BMKPoiIndoorResult*)poiIndoorResult errorCode:(BMKSearchErrorCode)errorCode;
  78. @end