16 #ifndef AACE_ADDRESS_BOOK_ADDRESS_BOOK_H    17 #define AACE_ADDRESS_BOOK_ADDRESS_BOOK_H    24 #include "AACE/Core/PlatformInterface.h"    27 namespace addressBook {
    29 class AddressBookEngineInterface;
    33     virtual ~AddressBook();
    35     enum class AddressBookType {
    57         virtual bool addName(
const std::string& entryId, 
const std::string& name) = 0;
    67         virtual bool addName(
const std::string& entryId, 
const std::string& firstName, 
const std::string& lastName) = 0;
    79             const std::string& entryId,
    80             const std::string& firstName,
    81             const std::string& lastName,
    82             const std::string& nickname) = 0;
    92         virtual bool addPhone(
const std::string& entryId, 
const std::string& label, 
const std::string& number) = 0;
   112         virtual bool addPostalAddress(
   113             const std::string& entryId,
   114             const std::string& label,
   115             const std::string& addressLine1,
   116             const std::string& addressLine2,
   117             const std::string& addressLine3,
   118             const std::string& city,
   119             const std::string& stateOrRegion,
   120             const std::string& districtOrCounty,
   121             const std::string& postalCode,
   122             const std::string& country,
   123             float latitudeInDegrees,
   124             float longitudeInDegrees,
   125             float accuracyInMeters) = 0;
   136     bool addAddressBook(
const std::string& addressBookSourceId, 
const std::string& name, AddressBookType type);
   144     bool removeAddressBook(
const std::string& addressBookSourceId);
   155     virtual bool getEntries(
   156         const std::string& addressBookSourceId,
   157         std::weak_ptr<IAddressBookEntriesFactory> factory) = 0;
   165     void setEngineInterface(std::shared_ptr<aace::addressBook::AddressBookEngineInterface> engineInterface);
   168     std::shared_ptr<aace::addressBook::AddressBookEngineInterface> m_engineInterface;
   171 inline std::ostream& operator<<(std::ostream& stream, 
const AddressBook::AddressBookType& type) {
   173         case AddressBook::AddressBookType::CONTACT:
   176         case AddressBook::AddressBookType::NAVIGATION:
   177             stream << 
"NAVIGATION";
   186 #endif  // AACE_ADDRESS_BOOK_ADDRESS_BOOK_H 
Definition: AddressBook.h:47
Definition: AddressBook.h:26