Example #1
0
func portByName(name string) (*C.struct_sp_port, error) {
	var p *C.struct_sp_port

	cname := C.CString(name)
	defer C.free(unsafe.Pointer(cname))

	if err := errmsg(C.sp_get_port_by_name(cname, &p)); err != nil {
		return nil, err
	}

	return p, nil
}
Example #2
0
// Init attempts to initialises the port represented by the port name passed in.
func Init(s *Conf, name string) (int32, error) {
	var result int32 = SP_OK
	C.sp_new_config(&s.oldConfig)
	C.sp_new_config(&s.newConfig)
	cp := C.CString(name)
	defer C.free(unsafe.Pointer(cp))
	result = C.sp_get_port_by_name(cp, &s.Port)
	checkResult(result)
	// Open before setting params
	result = C.sp_open(s.Port, SP_MODE_READ|SP_MODE_WRITE)
	return result, checkResult(result)
}