diff options
Diffstat (limited to 'api/franca/navigation/src-gen/org/genivi/navigation/poiservice/POIContentManagerStub.h')
-rw-r--r-- | api/franca/navigation/src-gen/org/genivi/navigation/poiservice/POIContentManagerStub.h | 252 |
1 files changed, 252 insertions, 0 deletions
diff --git a/api/franca/navigation/src-gen/org/genivi/navigation/poiservice/POIContentManagerStub.h b/api/franca/navigation/src-gen/org/genivi/navigation/poiservice/POIContentManagerStub.h new file mode 100644 index 0000000..f851d97 --- /dev/null +++ b/api/franca/navigation/src-gen/org/genivi/navigation/poiservice/POIContentManagerStub.h @@ -0,0 +1,252 @@ +/* +* This file was generated by the CommonAPI Generators. +* Used org.genivi.commonapi.core 2.1.6.v20140519. +* Used org.franca.core 0.8.11.201401091023. +* +* This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. +* If a copy of the MPL was not distributed with this file, You can obtain one at +* http://mozilla.org/MPL/2.0/. +*/ +/** + * This interface offers methods that implement the POI search functionality of a + * navigation system. + */ +#ifndef ORG_GENIVI_NAVIGATION_POISERVICE_POI_Content_Manager_STUB_H_ +#define ORG_GENIVI_NAVIGATION_POISERVICE_POI_Content_Manager_STUB_H_ + + + +#include <org/genivi/navigation/NavigationTypes.h> +#include <org/genivi/navigation/poiservice/POIServiceTypes.h> + +#include "POIContentManager.h" + +#if !defined (COMMONAPI_INTERNAL_COMPILATION) +#define COMMONAPI_INTERNAL_COMPILATION +#endif + +#include <CommonAPI/InputStream.h> +#include <CommonAPI/OutputStream.h> +#include <CommonAPI/SerializableStruct.h> +#include <cstdint> +#include <string> +#include <unordered_set> +#include <vector> + +#include <CommonAPI/Stub.h> + +#undef COMMONAPI_INTERNAL_COMPILATION + +namespace org { +namespace genivi { +namespace navigation { +namespace poiservice { + +/** + * Receives messages from remote and handles all dispatching of deserialized calls + * to a stub for the service POIContentManager. Also provides means to send broadcasts + * and attribute-changed-notifications of observable attributes as defined by this service. + * An application developer should not need to bother with this class. + */ +class POIContentManagerStubAdapter: virtual public CommonAPI::StubAdapter, public POIContentManager { + public: + + /** + * Sends a broadcast event for ConfigurationChanged. Should not be called directly. + * Instead, the "fire<broadcastName>Event" methods of the stub should be used. + */ + virtual void fireConfigurationChangedEvent(const std::vector<uint16_t>& changedSettings) = 0; + /** + * Sends a broadcast event for CategoriesRemoved. Should not be called directly. + * Instead, the "fire<broadcastName>Event" methods of the stub should be used. + */ + virtual void fireCategoriesRemovedEvent(const std::vector<POIServiceTypes::CategoryID>& categories) = 0; + /** + * Sends a broadcast event for POIAdded. Should not be called directly. + * Instead, the "fire<broadcastName>Event" methods of the stub should be used. + */ + virtual void firePOIAddedEvent(const std::vector<POIServiceTypes::POI_ID>& pois) = 0; + /** + * Sends a broadcast event for POIRemoved. Should not be called directly. + * Instead, the "fire<broadcastName>Event" methods of the stub should be used. + */ + virtual void firePOIRemovedEvent(const std::vector<POIServiceTypes::POI_ID>& pois) = 0; + + + virtual void deactivateManagedInstances() = 0; +protected: + /** + * Defines properties for storing the ClientIds of clients / proxies that have + * subscribed to the selective broadcasts + */ +}; + + +/** + * Defines the necessary callbacks to handle remote set events related to the attributes + * defined in the IDL description for POIContentManager. + * For each attribute two callbacks are defined: + * - a verification callback that allows to verify the requested value and to prevent setting + * e.g. an invalid value ("onRemoteSet<AttributeName>"). + * - an action callback to do local work after the attribute value has been changed + * ("onRemote<AttributeName>Changed"). + * + * This class and the one below are the ones an application developer needs to have + * a look at if he wants to implement a service. + */ +class POIContentManagerStubRemoteEvent { + public: + virtual ~POIContentManagerStubRemoteEvent() { } + +}; + + +/** + * Defines the interface that must be implemented by any class that should provide + * the service POIContentManager to remote clients. + * This class and the one above are the ones an application developer needs to have + * a look at if he wants to implement a service. + */ +class POIContentManagerStub: public virtual CommonAPI::Stub<POIContentManagerStubAdapter, POIContentManagerStubRemoteEvent> { +public: + virtual ~POIContentManagerStub() { } + virtual const CommonAPI::Version& getInterfaceVersion(std::shared_ptr<CommonAPI::ClientId> clientId) = 0; + + + /** + * This method returns the API version implemented by the content access module. + */ + /// This is the method that will be called on remote calls on the method getVersion. + virtual void getVersion(const std::shared_ptr<CommonAPI::ClientId> clientId, NavigationTypes::Version& version) = 0; + /** + * Set the current language set for the search by poi provider module. + + * The language defines the poi and categories name and details language. If the + * language is not supported, the default details will be returned in the native + * language. + */ + /// This is the method that will be called on remote calls on the method setLocale. + virtual void setLocale(const std::shared_ptr<CommonAPI::ClientId> clientId, std::string languageCode, std::string countryCode, std::string scriptCode) = 0; + /** + * Get the current language set for the search by poi provider module. + */ + /// This is the method that will be called on remote calls on the method getLocale. + virtual void getLocale(const std::shared_ptr<CommonAPI::ClientId> clientId, std::string& languageCode, std::string& countryCode, std::string& scriptCode) = 0; + /** + * Get the supported set of locales for the search by poi provider module. + */ + /// This is the method that will be called on remote calls on the method getSupportedLocales. + virtual void getSupportedLocales(const std::shared_ptr<CommonAPI::ClientId> clientId, std::vector<POIServiceTypes::Locales>& localeList) = 0; + /** + * This method retrieves the list od POI categories available (pre-defined and + * custom). + */ + /// This is the method that will be called on remote calls on the method getAvailableCategories. + virtual void getAvailableCategories(const std::shared_ptr<CommonAPI::ClientId> clientId, std::vector<POIServiceTypes::CategoryAndName>& categories) = 0; + /** + * Get the root category id. That would be ALL_CATEGORIES. + */ + /// This is the method that will be called on remote calls on the method getRootCategory. + virtual void getRootCategory(const std::shared_ptr<CommonAPI::ClientId> clientId, POIServiceTypes::CategoryID& category) = 0; + /** + * Get the children categories id and type (top level) from the a parent unique id. + */ + /// This is the method that will be called on remote calls on the method getChildrenCategories. + virtual void getChildrenCategories(const std::shared_ptr<CommonAPI::ClientId> clientId, POIServiceTypes::CategoryID category, std::vector<POIServiceTypes::CategoryAndLevel>& categories) = 0; + /** + * Get the parent categories id and type (top level) from the a unique id. + */ + /// This is the method that will be called on remote calls on the method getParentCategories. + virtual void getParentCategories(const std::shared_ptr<CommonAPI::ClientId> clientId, POIServiceTypes::CategoryID category, std::vector<POIServiceTypes::CategoryAndLevel>& categories) = 0; + /** + * Creates a category by name and return an unique id. + */ + /// This is the method that will be called on remote calls on the method createCategory. + virtual void createCategory(const std::shared_ptr<CommonAPI::ClientId> clientId, POIServiceTypes::CAMCategory category, POIServiceTypes::CategoryID& unique_id) = 0; + /** + * Removes a list of categories. Because of required time to remove it from the + * database, a signal is emitted when the deletion is done. + */ + /// This is the method that will be called on remote calls on the method removeCategories. + virtual void removeCategories(const std::shared_ptr<CommonAPI::ClientId> clientId, std::vector<POIServiceTypes::CategoryID> categories) = 0; + /** + * Adds a list of POIs to a category. Because of required time to add it to the + * database, a signal is emitted when the update is done, that gives the id of + * the elements added + */ + /// This is the method that will be called on remote calls on the method addPOIs. + virtual void addPOIs(const std::shared_ptr<CommonAPI::ClientId> clientId, POIServiceTypes::CategoryID unique_id, std::vector<POIServiceTypes::PoiAddedDetails> poiList) = 0; + /** + * Removes a list of POIs to a category. Because of required time to remove it + * from the database, a signal is emitted when the update is done. + */ + /// This is the method that will be called on remote calls on the method removePOIs. + virtual void removePOIs(const std::shared_ptr<CommonAPI::ClientId> clientId, std::vector<POIServiceTypes::POI_ID> ids) = 0; + /** + * This method is sent by the POI service component to inform all the CAM that a + * new POI search was started. + It provides all the relevant search + * parameters. Of course the CAM will only be aware of the search if it registers + * one of the search categories. + */ + /// This is the method that will be called on remote calls on the method poiSearchStarted. + virtual void poiSearchStarted(const std::shared_ptr<CommonAPI::ClientId> clientId, NavigationTypes::Handle poiSearchHandle, uint16_t maxSize, NavigationTypes::Coordinate3D location, std::vector<POIServiceTypes::CategoryAndRadius> poiCategories, std::vector<POIServiceTypes::AttributeDetails> poiAttributes, std::string inputString, uint16_t sortOption) = 0; + /** + * This method cancels the search for the current id. + */ + /// This is the method that will be called on remote calls on the method poiSearchCanceled. + virtual void poiSearchCanceled(const std::shared_ptr<CommonAPI::ClientId> clientId, NavigationTypes::Handle poiSearchHandle) = 0; + /** + * This method provides the poi results list found by the CAM. + As the POI + * unique id is managed by the POI component, the CAM only provides the POI name, + * the category and coordinates as well as all the relevant detailed information. + */ + /// This is the method that will be called on remote calls on the method resultListRequested. + virtual void resultListRequested(const std::shared_ptr<CommonAPI::ClientId> clientId, uint8_t camId, NavigationTypes::Handle poiSearchHandle, std::vector<POIServiceTypes::AttributeID> attributes, POIServiceTypes::SearchStatusState& statusValue, uint16_t& resultListSize, std::vector<POIServiceTypes::PoiCAMDetails>& resultList) = 0; + /** + * This method retrieves the details associated to one or more POI. + It + * contains the name, the parent categories, the list of attributes, the icons, + * ... . + */ + /// This is the method that will be called on remote calls on the method poiDetailsRequested. + virtual void poiDetailsRequested(const std::shared_ptr<CommonAPI::ClientId> clientId, std::vector<POIServiceTypes::POI_ID> source_id, std::vector<POIServiceTypes::SearchResultDetails>& results) = 0; + /** + * guidanceStatusChanged = This signal is sent to the clients when one or more + * configuration settings changes. + */ + /// Sends a broadcast event for ConfigurationChanged. + virtual void fireConfigurationChangedEvent(const std::vector<uint16_t>& changedSettings) = 0; + /** + * CategoriesRemoved = This signal is emitted when a list of categories and + * associated content has been removed from the database. + */ + /// Sends a broadcast event for CategoriesRemoved. + virtual void fireCategoriesRemovedEvent(const std::vector<POIServiceTypes::CategoryID>& categories) = 0; + /** + * POIAdded = This signal is emitted when a list of POIs and associated content + * has been added to the database. It returns the ids. + */ + /// Sends a broadcast event for POIAdded. + virtual void firePOIAddedEvent(const std::vector<POIServiceTypes::POI_ID>& pois) = 0; + /** + * POIRemoved = This signal is emitted when a list of POIs and associated content + * has been removed from the database. + */ + /// Sends a broadcast event for POIRemoved. + virtual void firePOIRemovedEvent(const std::vector<POIServiceTypes::POI_ID>& pois) = 0; + + using CommonAPI::Stub<POIContentManagerStubAdapter, POIContentManagerStubRemoteEvent>::initStubAdapter; + typedef CommonAPI::Stub<POIContentManagerStubAdapter, POIContentManagerStubRemoteEvent>::StubAdapterType StubAdapterType; + typedef CommonAPI::Stub<POIContentManagerStubAdapter, POIContentManagerStubRemoteEvent>::RemoteEventHandlerType RemoteEventHandlerType; + typedef POIContentManagerStubRemoteEvent RemoteEventType; + typedef POIContentManager StubInterface; +}; + +} // namespace poiservice +} // namespace navigation +} // namespace genivi +} // namespace org + +#endif // ORG_GENIVI_NAVIGATION_POISERVICE_POI_Content_Manager_STUB_H_ |