// Select a passive or emulated tag. func (d *Device) InitiatorSelectPassiveTarget(m Modulation, initData []byte) (Target, error) { if d.d == nil { return nil, errors.New("Device closed") } var pnt C.nfc_target err := Error(C.nfc_initiator_select_passive_target( d.d, C.nfc_modulation{C.nfc_modulation_type(m.Type), C.nfc_baud_rate(m.BaudRate)}, (*C.uint8_t)(&initData[0]), C.size_t(len(initData)), &pnt)) return unmarshallTarget(&pnt), err }
// Select a passive or emulated tag. func (d Device) InitiatorSelectPassiveTarget(m Modulation, initData []byte) (Target, error) { if *d.d == nil { return nil, errors.New("device closed") } var pnt C.nfc_target var initDataPtr *byte if len(initData) > 0 { initDataPtr = &initData[0] } n := C.nfc_initiator_select_passive_target( *d.d, C.nfc_modulation{C.nfc_modulation_type(m.Type), C.nfc_baud_rate(m.BaudRate)}, (*C.uint8_t)(initDataPtr), C.size_t(len(initData)), &pnt) if n <= 0 { return nil, Error(n) } return unmarshallTarget(&pnt), nil }