2 * Copyright (C) 2013 HERE Global B.V. All rights reserved.
3 * This software, including documentation, is protected by copyright controlled by
4 * HERE Global B.V. (“Software”). All rights are reserved. Copying, including reproducing,
5 * storing, adapting or translating, any or all of this material requires the prior
6 * written consent of HERE Global B.V. You may use this
7 * Software in accordance with the terms and conditions defined in the
8 * HERE Location Platform Services Terms and Conditions, available at
9 * http://developer.here.com/terms-conditions-base
11 * As an additional permission to the above, you may distribute Software,
12 * in object code format as part of an Application, according to, and subject to, terms and
13 * conditions defined in the Tizen Software Development kit (“SDK”) License Agreement.
14 * You may distribute such object code format Application under terms of your choice,
15 * provided that the header and source files of the Software have not been modified.
21 #include "common/HereMaps_global.h"
23 #ifdef TIZEN_MIGRATION
24 namespace Here { namespace PlugIn { //for plug-in
29 HERE_MAPS_BEGIN_NAMESPACE
32 * This class represents a (Place of Interest or POI) category identifier.
35 class EXPORT_API CategoryId
40 * This method is the destructor.
42 virtual ~CategoryId( );
45 * This method checks if the given instance of <code>CategoryId</code> is
46 * valid. An instance of this class is valid if its id element is not empty.
48 * @return <code>true</code> if the instance is valid, otherwise
51 bool IsValid( ) const;
54 * This method obtains a string representation of the given instance.
56 * @return A Unicode string containing a string representation of the given
57 * instance of <code>CategoryId</code>.
59 String ToString( ) const;
62 * This method obtains an invalid category id object.
64 * @return A constant reference to an invalid category id object.
66 static const CategoryId& GetInvalidCategoryId( );
69 * This method obtains the id of the root category from the given instance.
71 * @return A constant reference to an instance of the class representing the
74 static const CategoryId& GetRootCategoryId( );
76 // Factory methods for category filters
78 * This factory method obtains a category id object representing the
81 * @return A constant reference to an instance of the class representing the
82 * eat-drink category id.
84 static const CategoryId& GetEatDrinkCategoryId();
87 * This factory method obtains a category id object representing the
90 * @return A constant reference to an instance of the class representing the
91 * going-out category id.
93 static const CategoryId& GetGoingOutCategoryId();
96 * This factory method obtains a category id object representing the
97 * sights-museums category.
99 * @return A constant reference to an instance of the class representing the
100 * sights-museums category id.
102 static const CategoryId& GetSightsMuseumsCategoryId();
105 * This factory method obtains a category id object representing the
106 * transport category.
108 * @return A constant reference to an instance of the class representing the
109 * transport category id.
111 static const CategoryId& GetTransportCategoryId();
114 * This factory method obtains a category id object representing the
115 * accommodation category.
117 * @return A constant reference to an instance of the class representing the
118 * accommodation category id.
120 static const CategoryId& GetAccommodationCategoryId();
123 * This factory method obtains a category id object representing the
126 * @return A constant reference to an instance of the class representing the
127 * shopping category id.
129 static const CategoryId& GetShoppingCategoryId();
132 * This factory method obtains a category id object representing the
133 * leisure-outdoor category.
135 * @return A constant reference to an instance of the class representing the
136 * leisure-outdoor category id.
138 static const CategoryId& GetLeisureOutdoorCategoryId();
141 * This factory method obtains a category id object representing the
142 * administrative-areas-buildings category.
144 * @return A constant reference to an instance of the class representing the
145 * administrative-areas-buildings category id.
147 static const CategoryId& GetAdministrativeAreasBuildingsCategoryId();
150 * This factory method obtains a category id object representing the
151 * natural-geographical category.
153 * @return A constant reference to an instance of the class representing the
154 * natural-geographical category id.
156 static const CategoryId& GetNaturalGeographicalCategoryId();
159 CategoryId(const CategoryId&);
160 CategoryId& operator=(const CategoryId&);
162 /** Create an invalid instance */
163 CategoryId( const String& id);
166 class CategoryIdImpl;
167 CategoryIdImpl* m_pImpl;
169 friend class JsonParser;
170 friend class Category;
171 friend class TestCategoryId;
172 #ifdef TIZEN_MIGRATION
173 friend class Here::PlugIn::HerePlace; //for plug-in
178 HERE_MAPS_END_NAMESPACE
180 #endif // CATEGORYID_H_