diff options
author | asanoaozora <fifitaneki@hotmail.com> | 2017-02-02 15:23:56 +0100 |
---|---|---|
committer | asanoaozora <fifitaneki@hotmail.com> | 2017-02-02 15:23:56 +0100 |
commit | 07673f15b00e563d3c9197c0fa5da6ccad26e079 (patch) | |
tree | e219f96287ceef84511bbb93a08d66f274fe7500 | |
parent | 1eb0f2b703dd159438b641d7a088a08cbde48788 (diff) | |
download | poi-service-07673f15b00e563d3c9197c0fa5da6ccad26e079.tar.gz |
GT-3474
-rw-r--r-- | api/franca/navigation/poiservice/POISearch.fidl | 15 | ||||
-rw-r--r-- | api/franca/navigation/poiservice/POIServiceTypes.fidl | 321 | ||||
-rw-r--r-- | api/poi-service/genivi-poiservice-poisearch.xml | 18 | ||||
-rw-r--r-- | src/poi-service/poi-common/poi-common-dbus-data-model.h | 41 | ||||
-rw-r--r-- | src/poi-service/poi-server-capi/main.cpp | 12 | ||||
-rw-r--r-- | src/poi-service/poi-server/main.cpp | 6 | ||||
-rw-r--r-- | src/poi-service/poi-server/poi-server-class.h | 2 | ||||
-rw-r--r-- | test/poi-service/poi-client/poi-client-DBusSearchInterface.h | 2 | ||||
-rw-r--r-- | test/poi-service/poi-common/poi-common-types.h | 5 | ||||
-rw-r--r-- | test/poi-service/poi-common/poi-marshal-handler.cpp | 4 |
10 files changed, 399 insertions, 27 deletions
diff --git a/api/franca/navigation/poiservice/POISearch.fidl b/api/franca/navigation/poiservice/POISearch.fidl index 1824307..c56b7fd 100644 --- a/api/franca/navigation/poiservice/POISearch.fidl +++ b/api/franca/navigation/poiservice/POISearch.fidl @@ -38,7 +38,7 @@ interface POISearch { }
}
- <** @description : This method retrieves the list od POI categories available (pre-defined and custom).**>
+ <** @description : This method retrieves the list of POI categories available (pre-defined and custom).**>
method getAvailableCategories {
out {
<** @description : List of categories (id, name and top_level).**>
@@ -78,6 +78,17 @@ interface POISearch { }
}
+ <** @description : Get the categories that are marked with the given standard category. **>
+ method getCategoriesWithStandardCategoryId {
+ in {
+ <** @description : Categories marked with "standardCategoryId" should be returned. **>
+ StandardCategory standardCategoryId
+ } out {
+ <** @description : List of categories that are marked with the requested standard category. **>
+ CategoryID[] categories
+ }
+ }
+
<** @description : This method retrieves the details associated to one or more POI categories.
It contains the name, the parent categories, the top level attribute, the list of attributes, the icons, ... .**>
method getCategoriesDetails {
@@ -265,4 +276,4 @@ interface POISearch { UInt16 resultListSize
}
}
-}
\ No newline at end of file +}
diff --git a/api/franca/navigation/poiservice/POIServiceTypes.fidl b/api/franca/navigation/poiservice/POIServiceTypes.fidl index 9af5adb..973d726 100644 --- a/api/franca/navigation/poiservice/POIServiceTypes.fidl +++ b/api/franca/navigation/poiservice/POIServiceTypes.fidl @@ -64,7 +64,322 @@ typeCollection POIServiceTypes { MOTORWAY_EXIT = 210
ALL_CATEGORIES = 65535
}
-
+
+ enumeration StandardCategory {
+ NOT_STANDARD_CATEGORY
+ //////////////////////////////////////////////
+ // Group: Vehicles
+ //////////////////////////////////////////////
+
+ VEHICLE_REPAIR = 1
+ PETROL_STATION = 2
+
+ // Electric Vehicle Station (EVS)
+ // An EV charging station, also called electric recharging point, charging
+ // point, EVSE (Electric Vehicle Supply Equipment), and EVCE (Electric
+ // Vehicle Charging Equipment), supplies electricity for the recharging of
+ // electric vehicles and other plug-in vehicles (including plug-in hybrids).
+ EVS_CHARGING_STATION = 3
+
+ CONTROLLED_ACCESS_INTERSECTION = 4
+ CONTROLLED_ACCESS_ENTRY_EXIT = 5
+
+ // Smart IC - Controlled Access roads where no cache payments
+ // are available. Only Electronic (ETC) payments are available.
+ // These roads are e.g. in Japan and Korea.
+ CONTROLLED_ACCESS_SMART_IC = 6
+
+ RENT_A_CAR = 7
+ CAR_WASH = 8
+ CAR_DEALERSHIP = 9
+ MOTOR_CYCLE_DEALERSHIP = 10
+ TRUCK_DEALERSHIP = 11
+ PARKING_GARAGE = 12
+ OPEN_PARKING = 13
+
+ // A service located along freeways offering one or more recreational
+ // facilities or service functions to the car driver.
+ REST_AREA = 14
+
+ ROAD_ASSISTANCE = 15
+ CAMPING = 16
+ CARAVAN_SITE = 17
+ COACH_AND_LORRY_PARKING = 18
+
+ // Motoring Organization Office
+ // A national club or subscription based organisation offering services
+ // and facilities for motorists.
+ MOTORING_ORG_OFFICE = 19
+
+ // Car Shipping Terminal
+ // A location where cars may be loaded onto ferries for car shipping
+ // services.
+ CAR_SHIPPING_TERMINAL = 20
+
+
+ //////////////////////////////////////////////
+ // Group: Lodging
+ //////////////////////////////////////////////
+
+ HOTEL_MOTEL = 21
+
+ //////////////////////////////////////////////
+ // Group: Food & Drinks
+ //////////////////////////////////////////////
+
+ // Restaurant
+ // Any establishment offering meals for payment including sit down meals or
+ // fast food take-aways. Hotels or a Public Houses may be included in this
+ // Feature.
+ RESTAURANT = 22
+
+ // Fast food
+ // Any establishment offering fast food take-away meals for payment.
+ FAST_FOOD = 23
+
+ // Coffee shop
+ // An establishment which serves mainly coffee or tea.
+ COFFEE_SHOP = 24
+
+ // Bar or Pub
+ // An establishment serving alcoholic beverages, providing seating, and may
+ // serve food.
+ BAR_OR_PUB = 25
+
+
+ //////////////////////////////////////////////
+ // Group: Culture
+ //////////////////////////////////////////////
+
+ CINEMA = 26
+ MUSEUM = 27
+ THEATRE = 28
+ LIBRARY = 29
+
+
+ //////////////////////////////////////////////
+ // Group: Health
+ //////////////////////////////////////////////
+
+ // Hospital / Polyclinic
+ HOSPITAL = 30
+
+ // Physician
+ // Licensed medical practitioner which provides services related to
+ // restoring human health.
+ PHYSICIAN = 31
+
+ // Dentist
+ // Licensed medical practitioner which provides services related to dental
+ // treatment.
+ DENTIST = 32
+
+ PHARMACY = 33
+
+ // Veterinarian
+ // Licensed medical practitioner which provides services related to
+ // medical treatment of animals.
+ VETERINARIAN_SERVICE = 34
+
+
+ //////////////////////////////////////////////
+ // Group: Public Buildings
+ //////////////////////////////////////////////
+
+ POLICE_STATION = 35
+ POST_OFFICE = 36
+ CITY_HALL = 37
+ EMBASSY = 38
+ COURT_HOUSE = 39
+
+ // Government Office
+ // An office for local, regional or national government activities.
+ GOVERNMENT_OFFICE = 40
+
+ // Community Centre
+ // Facilities and activities for the benefit of the local community only.
+ // They typically cater to special interest groups such as youth, elderly,
+ // or handicapped.
+ COMMUNITY_CENTER = 41
+
+
+ //////////////////////////////////////////////
+ // Group: Shopping
+ //////////////////////////////////////////////
+
+ SHOPPING_CENTER = 42
+
+ // Store
+ // A business establishment where usually diversified goods are kept for
+ // retail sale (e.g. Bookstore, Grocery Store, Conveniency store, Clothing
+ // store, etc.)
+ STORE = 43
+
+
+ //////////////////////////////////////////////
+ // Group: Finance
+ //////////////////////////////////////////////
+
+ BANK = 44
+ ATM = 45
+ CURRENCY_EXCHANGE = 46
+
+
+ //////////////////////////////////////////////
+ // Group: Tourism
+ //////////////////////////////////////////////
+
+ TOURIST_OFFICE = 47
+ TRAVEL_AGENCY = 48
+
+
+ //////////////////////////////////////////////
+ // Group: Sights
+ //////////////////////////////////////////////
+
+ TOURIST_ATTRACTION = 49
+ HISTORICAL_MONUMENT = 50
+ NATIONAL_PARK = 51
+
+ // City Center
+ // This Position which adequately describes a central activity point of a
+ // settlement or Administrative Area. It will typically be the town hall,
+ // central train station or other central activity centre (i.e. church or
+ // pedestrian District.)
+ CITY_CENTER = 52
+
+ // Hamlet
+ // A Hamlet is a very small village, typically without a church. In some
+ // countries, these Hamlets are well known locations and are used by
+ // inhabitants to refer to their home address.
+ HAMLET = 53
+
+
+ //////////////////////////////////////////////
+ // Group: Entertainment & Fun
+ //////////////////////////////////////////////
+
+ ZOO = 54
+ AMUSEMENT_PARK = 55
+
+ // Going Out Places
+ // Places where people visit when they "go out": clubs, shows, casinos,
+ // parties, etc.
+ GOING_OUT = 56
+
+
+ //////////////////////////////////////////////
+ // Group: Sports
+ //////////////////////////////////////////////
+
+ STADIUM = 57
+
+ // Sports Center
+ // An indoor sports facility or an outdoor location where any sport such as
+ // golf, riding, sailing etc. may be enjoyed.
+ SPORTS_CENTER = 58
+
+ RECREATION = 59
+ SKI_RESORT = 60
+ SWIMMING_POOL = 61
+ GOLF_COURSE = 62
+
+
+ //////////////////////////////////////////////
+ // Group: Water Transport
+ //////////////////////////////////////////////
+
+ FERRY_TERMINAL = 63
+
+ // Marina
+ // An area with docking and service facility for pleasure craft. See also
+ // HARBOUR
+ MARINA = 64
+
+ // Harbour
+ // A portion of a sea, a lake, or other large body of water, either
+ // land-locked or artificially protected so as to be a place of safety for
+ // vessels in stormy weather. See also MARINA.
+ HARBOUR = 65
+
+
+ //////////////////////////////////////////////
+ // Group: Business
+ //////////////////////////////////////////////
+
+ // Business Facility
+ // Location where the main activities of a particular business activity are
+ // concentrated.
+ BUSINESS_FACILITY = 66
+
+ // Exhibition or Conference Center
+ EXHIBITION_CONFERENCE_CENTER = 67
+
+
+ //////////////////////////////////////////////
+ // Group: Passenger Transport
+ //////////////////////////////////////////////
+
+ RAILWAY_STATION = 68
+
+ // Public transit stop
+ // Public Transit Stop is a point where passengers can board a public
+ // transport vehicle.
+ PUBLIC_TRANSIT_STOP = 69
+
+ // Park and ride
+ // A parking facility that is designated as a Park & Ride, a facility where
+ // people leave their vehicles to join a carpool/bus/etc.
+ PARK_AND_RIDE = 70
+
+ AIRPORT = 71
+
+ // Airline Access
+ // An airline's check-in area (if there is more than one terminal) at the
+ // airport.
+ AIRLINE_ACCESS = 72
+
+ // Taxi stand
+ // Designated queueing, loading and unloading area for taxis, usually in
+ // city centres and buildings with a high volume of pedestrians.
+ TAXI_STAND = 73
+
+ //////////////////////////////////////////////
+ // Group: Emergency Categories
+ //////////////////////////////////////////////
+
+ EMERGENCY_CALL_STATION = 74
+ EMERGENCY_MEDICAL_SERVICE = 75
+ FIRST_AID_POST = 76
+ FIRE_BRIGADE = 77
+
+ //////////////////////////////////////////////
+ // Group: Other
+ //////////////////////////////////////////////
+
+ PLACE_OF_WORSHIP = 78
+
+ // School, University, or College
+ EDUCATION = 79
+
+ CUSTOMS = 80
+ FRONTIER_CROSSING = 81
+ TOLL_LOCATION = 82
+
+ // Public restroom
+ // Room equipped with toilets and lavatories for public use.
+ PUBLIC_RESTROOM = 83
+ PUBLIC_PHONE = 84
+ KINDERGARTEN = 85
+ MOUNTAIN_PASS_SUMMIT = 86
+
+ // Speed Camera
+ // Roadside camera, triggered by a speeding vehicle, that takes a photograph
+ // of that vehicle and records its speed
+ SPEED_CAMERA = 87
+
+ }
+
<** @description: Type of Attribute**>
enumeration AttributeType {
STRING = 500
@@ -316,6 +631,10 @@ typeCollection POIServiceTypes { {
<** @description : Category unique id.**>
CategoryID uniqueId
+
+ <** @description : Identifier for the POI Standard Category that describes the semantic meaning of the POI Category.
+ NOT_STANDARD_CATEGORY should be used if the category doesn't belong to any standard category or if it is unknown. **>
+ StandardCategory standardCategoryId
<** @description : list of parent categories unique id.**>
CategoryID[] parentsId
<** @description : visual icons set.**>
diff --git a/api/poi-service/genivi-poiservice-poisearch.xml b/api/poi-service/genivi-poiservice-poisearch.xml index 69e5245..7020beb 100644 --- a/api/poi-service/genivi-poiservice-poisearch.xml +++ b/api/poi-service/genivi-poiservice-poisearch.xml @@ -115,6 +115,21 @@ </doc> </error> </method> + <method name="GetCategoriesWithStandardCategoryId"> + <doc> + <line>GetCategoriesWithStandardCategoryId = Get the categories that are marked with the given standard category.</line> + </doc> + <arg name="standardCategoryId" type="i" direction="in"> + <doc> + <line>Categories marked with "standardCategoryId" should be returned.</line> + </doc> + </arg> + <arg name="categories" type="au" direction="out"> + <doc> + <line>List of categories that are marked with the requested standard category.</line> + </doc> + </arg> + </method> <method name="GetCategoriesDetails"> <doc> <line>GetCategoriesDetails = This method retrieves the details associated to one or more POI categories.</line> @@ -126,12 +141,13 @@ <line>Note: A POI category is a unique ID. It could be a predifined category or a custom one defined by a POI plug-in.</line> </doc> </arg> - <arg name="results" type="a((uau(yv)sbs(yv))a(usia(is(yv)))a(us))" direction="out"> + <arg name="results" type="a((uiau(yv)sbs(yv))a(usia(is(yv)))a(us))" direction="out"> <doc> <line>results = array[details, attributeList, sortOptions]</line> <line>results = List of details for all the POI categories.</line> <line>details = struct(unique_id, list of parents_id, icons, name, top_level, short_desc, media)]</line> <line>unique_id = Category unique id</line> + <line>standardCategoryId = enum(...) Identifier for the POI Standard Category that describes the semantic meaning of the POI Category.</line> <line>parents_id = list of parent categories unique id</line> <line>icons = visual icons set</line> <line>name = name</line> diff --git a/src/poi-service/poi-common/poi-common-dbus-data-model.h b/src/poi-service/poi-common/poi-common-dbus-data-model.h index 26c88d6..e8e3f76 100644 --- a/src/poi-service/poi-common/poi-common-dbus-data-model.h +++ b/src/poi-service/poi-common/poi-common-dbus-data-model.h @@ -194,12 +194,13 @@ private: version_t m_version; }; -class DBus_categoryDetails : DBus_dataFormatConverter // (uau(yv)sbs(yv)) -->in this implementation, the two variant data are string +class DBus_categoryDetails : DBus_dataFormatConverter // (uiau(yv)sbs(yv)) -->in this implementation, the two variant data are string { public: struct categoryDetails_t { categoryId_t id; //Category unique id + int32_t standardCategoryId; //standard Category Id std::vector<categoryId_t> parents_id; //list of parent categories unique id std::string icons; //visual icons set std::string name; @@ -208,11 +209,12 @@ public: std::string media; //media associated (html web site, audio, video, ...) (optional) }; - typedef ::DBus::Struct< uint32_t, std::vector< uint32_t >, DBusCommonAPIVariant, std::string, bool, std::string, DBusCommonAPIVariant > DBus_categoryDetails_t; + typedef ::DBus::Struct< uint32_t, int32_t, std::vector< uint32_t >, DBusCommonAPIVariant, std::string, bool, std::string, DBusCommonAPIVariant > DBus_categoryDetails_t; DBus_categoryDetails() { m_categoryDetails.id = 0; + m_categoryDetails.standardCategoryId = 0; m_categoryDetails.parents_id.clear(); m_categoryDetails.parents_id.push_back(0); //one element by default m_categoryDetails.icons = ""; @@ -228,6 +230,7 @@ public: { size_t index; m_categoryDetails.id = value.id; + m_categoryDetails.standardCategoryId = value.standardCategoryId; m_categoryDetails.parents_id.clear(); for (index=0;index<value.parents_id.size();index++) { @@ -249,16 +252,17 @@ public: { size_t index; m_categoryDetails.id = value._1; + m_categoryDetails.standardCategoryId = value._2; m_categoryDetails.parents_id.clear(); - for (index=0;index<value._2.size();index++) + for (index=0;index<value._3.size();index++) { - m_categoryDetails.parents_id.push_back(value._2.at(index)); + m_categoryDetails.parents_id.push_back(value._3.at(index)); } - m_categoryDetails.icons = value._3._2.reader().get_string(); - m_categoryDetails.name = value._4; - m_categoryDetails.top_level = value._5; - m_categoryDetails.description = value._6; - m_categoryDetails.description = value._7._2.reader().get_string(); + m_categoryDetails.icons = value._4._2.reader().get_string(); + m_categoryDetails.name = value._5; + m_categoryDetails.top_level = value._6; + m_categoryDetails.description = value._7; + m_categoryDetails.description = value._8._2.reader().get_string(); } DBus_categoryDetails_t getDBus() @@ -267,16 +271,17 @@ public: DBus_categoryDetails_t return_value; return_value._1 = m_categoryDetails.id; - return_value._2.clear(); + return_value._2 = m_categoryDetails.standardCategoryId; + return_value._3.clear(); for (index=0;index<m_categoryDetails.parents_id.size();index++) { - return_value._2.push_back(m_categoryDetails.parents_id.at(index)); + return_value._3.push_back(m_categoryDetails.parents_id.at(index)); } - return_value._3 = createVariantString(m_categoryDetails.icons); - return_value._4 = m_categoryDetails.name; - return_value._5 = m_categoryDetails.top_level; - return_value._6 = m_categoryDetails.description; - return_value._7 = createVariantString(m_categoryDetails.media); + return_value._4 = createVariantString(m_categoryDetails.icons); + return_value._5 = m_categoryDetails.name; + return_value._6 = m_categoryDetails.top_level; + return_value._7 = m_categoryDetails.description; + return_value._8 = createVariantString(m_categoryDetails.media); return(return_value); } @@ -452,7 +457,7 @@ private: categorySortOption_t m_categorySortOption; }; -class DBus_category : DBus_dataFormatConverter // ( (uau(yv)sbs(yv)) a(usia(is(yv))) a(us) ) +class DBus_category : DBus_dataFormatConverter // ( (uiau(yv)sbs(yv)) a(usia(is(yv))) a(us) ) { public: struct category_t @@ -462,7 +467,7 @@ public: std::vector<DBus_categorySortOption::categorySortOption_t> sortOptions; }; - typedef ::DBus::Struct< ::DBus::Struct< uint32_t, std::vector< uint32_t >, DBusCommonAPIVariant, std::string, bool, std::string, DBusCommonAPIVariant >, std::vector< ::DBus::Struct< uint32_t, std::string, int32_t, std::vector< ::DBus::Struct< int32_t, std::string, DBusCommonAPIVariant > > > >, std::vector< ::DBus::Struct< uint32_t, std::string > > > DBus_category_t; + typedef ::DBus::Struct< ::DBus::Struct< uint32_t, int32_t, std::vector< uint32_t >, DBusCommonAPIVariant, std::string, bool, std::string, DBusCommonAPIVariant >, std::vector< ::DBus::Struct< uint32_t, std::string, int32_t, std::vector< ::DBus::Struct< int32_t, std::string, DBusCommonAPIVariant > > > >, std::vector< ::DBus::Struct< uint32_t, std::string > > > DBus_category_t; DBus_category() { diff --git a/src/poi-service/poi-server-capi/main.cpp b/src/poi-service/poi-server-capi/main.cpp index 27dd453..f5155ae 100644 --- a/src/poi-service/poi-server-capi/main.cpp +++ b/src/poi-service/poi-server-capi/main.cpp @@ -369,6 +369,11 @@ public: void getParentCategories(const std::shared_ptr<CommonAPI::ClientId> _client, ::v4::org::genivi::CommonTypes::CategoryID _category, getParentCategoriesReply_t _reply); /** + * description: Get the categories that are marked with the given standard category. + */ + void getCategoriesWithStandardCategoryId(const std::shared_ptr<CommonAPI::ClientId> _client, ::v4::org::genivi::navigation::poiservice::POIServiceTypes::StandardCategory _standardCategoryId, getCategoriesWithStandardCategoryIdReply_t _reply); + + /** * description: This method retrieves the details associated to one or more POI categories. * It contains the name, the parent categories, the top level attribute, the * list of attributes, the icons, ... . @@ -1383,6 +1388,7 @@ void POISearchServerStub::getCategoriesDetails(const std::shared_ptr<CommonAPI:: if ( isCategoryAvailable(_categories.at(index),&category_index) == true) { //category found into the embedded data! categoryDetails.setUniqueId(m_availableCategoryTable[category_index].id); + categoryDetails.setStandardCategoryId(POIServiceTypes::StandardCategory::NOT_STANDARD_CATEGORY); parentsId.clear(); for (sub_index=0;sub_index<m_availableCategoryTable[category_index].parentList.size();sub_index++) @@ -1437,6 +1443,12 @@ void POISearchServerStub::getCategoriesDetails(const std::shared_ptr<CommonAPI:: _reply(_results); } +void POISearchServerStub::getCategoriesWithStandardCategoryId(const std::shared_ptr<CommonAPI::ClientId> _client, ::v4::org::genivi::navigation::poiservice::POIServiceTypes::StandardCategory _standardCategoryId, getCategoriesWithStandardCategoryIdReply_t _reply) +{ + std::vector< CommonTypes::CategoryID > _categories; + _reply(_categories); +} + void POISearchServerStub::createPoiSearchHandle(const std::shared_ptr<CommonAPI::ClientId> _client, createPoiSearchHandleReply_t _reply) { // the POC is limited to the management of one handle ! diff --git a/src/poi-service/poi-server/main.cpp b/src/poi-service/poi-server/main.cpp index 0b6725a..a2b06a4 100644 --- a/src/poi-service/poi-server/main.cpp +++ b/src/poi-service/poi-server/main.cpp @@ -934,6 +934,12 @@ std::vector< DBus_categoryIdLevel::DBus_categoryIdLevel_t > poiSearchServer::Get return(return_value); } +std::vector< uint32_t > poiSearchServer::GetCategoriesWithStandardCategoryId(const int32_t& standardCategoryId) +{ + std::vector< uint32_t > return_value; + return return_value; +} + std::vector< DBus_category::DBus_category_t > poiSearchServer::GetCategoriesDetails(const std::vector< categoryId_t >& categories) { std::vector<DBus_category::DBus_category_t > return_value; diff --git a/src/poi-service/poi-server/poi-server-class.h b/src/poi-service/poi-server/poi-server-class.h index b954f14..f8b8cc4 100644 --- a/src/poi-service/poi-server/poi-server-class.h +++ b/src/poi-service/poi-server/poi-server-class.h @@ -244,6 +244,8 @@ public: std::vector< DBus_categoryIdLevel::DBus_categoryIdLevel_t > GetParentCategories(const categoryId_t& category); + std::vector< uint32_t > GetCategoriesWithStandardCategoryId(const int32_t& standardCategoryId); + std::vector< DBus_category::DBus_category_t > GetCategoriesDetails(const std::vector< categoryId_t >& categories); handleId_t CreatePoiSearchHandle(); diff --git a/test/poi-service/poi-client/poi-client-DBusSearchInterface.h b/test/poi-service/poi-client/poi-client-DBusSearchInterface.h index 92b2e44..ac81b0f 100644 --- a/test/poi-service/poi-client/poi-client-DBusSearchInterface.h +++ b/test/poi-service/poi-client/poi-client-DBusSearchInterface.h @@ -99,7 +99,7 @@ public Q_SLOTS: // METHODS } inline QDBusPendingReply<QList<categoryDetailsList_t> >GetCategoriesDetails(QList<categoryId_t> categories) - { // "au" in "a((uauvsbsv)a(usia(isv))a(us))" out + { // "au" in "a((uiauvsbsv)a(usia(isv))a(us))" out QList<QVariant> argumentList; argumentList << qVariantFromValue(categories); return asyncCallWithArgumentList(QLatin1String("GetCategoriesDetails"), argumentList); diff --git a/test/poi-service/poi-common/poi-common-types.h b/test/poi-service/poi-common/poi-common-types.h index 66c98fd..65523a8 100644 --- a/test/poi-service/poi-common/poi-common-types.h +++ b/test/poi-service/poi-common/poi-common-types.h @@ -140,9 +140,10 @@ struct resultSearchDetails_t //((us(ddd))aua(ui(yv))) QList<poiAttribute_t> attributes; }; -struct categoryDetails_t //(uau(yv)sbs(yv)) +struct categoryDetails_t //(uiau(yv)sbs(yv)) { categoryId_t id; //Category unique id + int standardCategoryId; //standard Category Id QList<categoryId_t> parents_id; //list of parent categories unique id DBusCommonAPIVariant_t icons; //visual icons set QString name; //need to be a QString for UTF8 @@ -172,7 +173,7 @@ struct categorySortOption_t //(us) std::string name; //name to be displayed by application }; -struct categoryDetailsList_t //((uau(yv)sbs(yv)) a(usia(is(yv))) a(us)) +struct categoryDetailsList_t //((uiau(yv)sbs(yv)) a(usia(is(yv))) a(us)) { categoryDetails_t details; QList<categoryAttribute_t> attributes; diff --git a/test/poi-service/poi-common/poi-marshal-handler.cpp b/test/poi-service/poi-common/poi-marshal-handler.cpp index f90aafb..9f82787 100644 --- a/test/poi-service/poi-common/poi-marshal-handler.cpp +++ b/test/poi-service/poi-common/poi-marshal-handler.cpp @@ -239,7 +239,7 @@ QDBusArgument &operator << (QDBusArgument &argument, const resultSearch_t &sourc const QDBusArgument &operator >> (const QDBusArgument &argument,categoryDetails_t &dest) { argument.beginStructure(); - argument >> dest.id >> dest.parents_id >> dest.icons >> dest.name >> dest.top_level >> dest.description >> dest.media; + argument >> dest.id >> dest.standardCategoryId >> dest.parents_id >> dest.icons >> dest.name >> dest.top_level >> dest.description >> dest.media; argument.endStructure(); return argument; } @@ -247,7 +247,7 @@ const QDBusArgument &operator >> (const QDBusArgument &argument,categoryDetails_ QDBusArgument &operator << (QDBusArgument &argument, const categoryDetails_t &source) { argument.beginStructure(); - argument << source.id << source.parents_id << source.icons << source.name << source.top_level << source.description << source.media; + argument << source.id << source.standardCategoryId << source.parents_id << source.icons << source.name << source.top_level << source.description << source.media; argument.endStructure(); return argument; } |