// // Created by robin on 7/22/16. // #include #include "LibNfcBusiness.h" LibNfcBusiness::LibNfcBusiness() { _libNfc = std::make_shared(); } LibNfcBusiness::~LibNfcBusiness() { _libNfc->clean(); } ResultBool LibNfcBusiness::init() { if (isInitialized()) { return ResultBool::error("LibNfc is already initialized"); } return _libNfc->init(); } std::string LibNfcBusiness::getVersion() { return LibNfc::getVersion(); } void LibNfcBusiness::clean() { if (isInitialized()) { _libNfc->clean(); } } bool LibNfcBusiness::isInitialized() const { return _libNfc->getContext() != 0; } Result>> LibNfcBusiness::getDevices() const { if (!isInitialized()) { return Result>>::error("LibNfc is not initialized"); } auto devicesResult = _libNfc->getDevices(); if (!devicesResult) { return Result>>::error(devicesResult); } auto devices = devicesResult.getData(); std::vector> devicesBusiness; for (auto device : devices) { devicesBusiness.push_back(std::make_shared(device)); } return Result>>::ok(devicesBusiness); } std::shared_ptr LibNfcBusiness::getLibNfc() const { return _libNfc; }