2 * Navit, a modular navigation system.
3 * Copyright (C) 2005-2008 Navit Team
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public License
7 * version 2 as published by the Free Software Foundation.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public
15 * License along with this program; if not, write to the
16 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
20 #ifndef NAVIT_SEARCH_H
21 #define NAVIT_SEARCH_H
26 struct search_list_common {
28 struct item unique,item;
37 struct search_list_country {
38 struct search_list_common common;
46 struct search_list_town {
47 struct search_list_common common;
52 struct search_list_street {
53 struct search_list_common common;
57 struct search_list_house_number {
58 struct search_list_common common;
62 struct search_list_result {
65 struct search_list_country *country;
66 struct search_list_town *town;
67 struct search_list_street *street;
68 struct search_list_house_number *house_number;
75 struct search_list_result;
76 struct search_list *search_list_new(struct mapset *ms);
77 void search_list_search(struct search_list *this_, struct attr *search_attr, int partial);
78 struct search_list_common *search_list_select(struct search_list *this_, enum attr_type attr_type, int id, int mode);
79 struct search_list_result *search_list_get_result(struct search_list *this_);
80 void search_list_destroy(struct search_list *this_);
81 void search_init(void);
82 /* end of prototypes */