nfc_initiator_poll_dep_target(nfc_device pnd, nfc_dep_mode ndm, nfc_baud_rate nbr, nfc_dep_info pndiInitiator, nfc_target pnt, int timeout) { const int period = 300; int remaining_time = timeout; int res; int result = 0; bool bInfiniteSelect = pnd.bInfiniteSelect; pnt = null; if ((res = nfc_device_set_property_bool(pnd, nfc_property.NP_INFINITE_SELECT, true)) < 0) { return(res); } while (remaining_time > 0) { if ((res = nfc_initiator_select_dep_target(pnd, ndm, nbr, pndiInitiator, ref pnt, period)) < 0) { if (res != NFC_ETIMEOUT) { result = res; break; } } if (res == 1) { result = res; break; } remaining_time -= period; } if (!bInfiniteSelect) { if ((res = nfc_device_set_property_bool(pnd, nfc_property.NP_INFINITE_SELECT, false)) < 0) { return(res); } } return(result); }
public static string str_nfc_baud_rate(nfc_baud_rate nbr) { switch (nbr) { case nfc_baud_rate.NBR_UNDEFINED: return("undefined baud rate"); case nfc_baud_rate.NBR_106: return("106 kbps"); case nfc_baud_rate.NBR_212: return("212 kbps"); case nfc_baud_rate.NBR_424: return("424 kbps"); case nfc_baud_rate.NBR_847: return("847 kbps"); default: return("Unkwown baud rate"); } }
public static extern string str_nfc_baud_rate(nfc_baud_rate nbr);
public static extern int nfc_initiator_select_dep_target(IntPtr pnd, nfc_dep_mode ndm, nfc_baud_rate nbr, ref nfc_dep_info pndiInitiator, IntPtr pnt, int timeout);
public static extern int nfc_initiator_poll_dep_target(IntPtr pnd, nfc_dep_mode ndm, nfc_baud_rate nbr, ref nfc_dep_info pndiInitiator, IntPtr pnt, int timeout);
nfc_initiator_select_dep_target(nfc_device pnd, nfc_dep_mode ndm, nfc_baud_rate nbr, nfc_dep_info pndiInitiator, ref nfc_target pnt, int timeout) { pnd.last_error = 0; return(pnd.driver.initiator_select_dep_target(pnd, ndm, nbr, pndiInitiator, ref pnt, timeout)); }