NFC Peer
Интерфейс org.sailfishos.nfc.Peer предназначен для управления взаимодействием адаптера с другим NFC-адаптером по P2P-соединению с применением протокола LLCP. Подробнее…
Шина: | системная |
Служба: | org.sailfishos.nfc.Peer |
Объект: | / |
Интерфейс: | org.sailfishos.nfc.Peer |
Сигналы
- Removed()
- WellKnownServicesChanged(uint32 &wks)
Методы
- GetAll(int &version, bool &present, uint32 &technology, vector<string> &interfaces, uint32 &wks)
- GetInterfaceVersion(int &version)
- GetPresent(bool &present)
- GetTechnology(uint32 &technology)
- GetInterfaces(vector<string> &interfaces)
- GetKnownServices(uint32 &wks)
- Deactivate()
- ConnectAccessPoint(uint32 rsap, UnixFd &fd)
- ConnectServiceName(const string &name, UnixFd &fd)
Подробное описание
Для P2P-соединений используются технологии:
NFC_TECHNOLOGY_UNKNOWN
(0) — Unknown;NFC_TECHNOLOGY_A
(1) — NFC-A;NFC_PROTOCOL_T3_TAG
(4) — NFC-F.
Описание методов
GetAll(int &version, bool &present, uint32 &technology, vector<string> &interfaces, uint32 &wks)
Возвращает:
version
— версию интерфейса;present
— наличие подключенного NFC-устройства;technology
— используемую технологию;interfaces
— перечень совместимых интерфейсов;wks
— битовую маску стандартных сервисов согласно спецификации протокола NFC LLCP.
GetInterfaceVersion(int &version)
Возвращает версию интерфейса.
GetPresent(bool &present)
Возвращает true
при наличии подключенного по P2P-соединению внешнего NFC-устройства.
GetTechnology(uint32 &technology)
Возвращает используемую технологию.
GetInterfaces(vector<string> &interfaces)
Возвращает список совместимых интерфейсов, например: org.sailfishos.nfc.Tag, org.sailfishos.nfc.IsoDep.
GetKnownServices(uint32 &wks)
Возвращает битовую маску стандартных сервисов согласно спецификации протокола NFC LLCP.
Deactivate()
Деактивирует P2P-соединение с внешним NFC-устройством.
ConnectAccessPoint(uint32 rsap, UnixFd &fd)
Принимает:
rsap
— Remote SAP (Service Access Point) протокола LLCP (аналог номера порта в IP протоколе).
Возвращает:
fd
— сокет для обмена данными с приложением, работающем на другом NFC устройстве. NFCD обеспечивает копирование данных между сокетом и NFC, используя внутреннюю реализацию протокола LLCP.
ConnectServiceName(const string &name, UnixFd &fd)
Инициирует подключение к сервису с заданным именем name
,возвращает аргумент fd
,
сокет для обмена данными с приложением, работающем на другом NFC устройстве.
NFCD обеспечивает копирование данных между сокетом и NFC, использую внутреннюю реализацию протокола
LLCP.