From 88e647775e738d7a24f7643e35ab5cbf0b312bc9 Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Fri, 1 Jan 2016 23:32:28 +0100 Subject: [PATCH] Rename serial.SerialPort to serial.Port another lint suggestion. --- serial_unix.go | 24 ++++++++++++------------ serial_windows.go | 15 +++++++-------- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/serial_unix.go b/serial_unix.go index 29c0b10..f308dc0 100644 --- a/serial_unix.go +++ b/serial_unix.go @@ -14,13 +14,13 @@ import "strings" import "syscall" import "unsafe" -// Opaque type that implements SerialPort interface for linux -type SerialPort struct { +// Port is the handler for a serial Port +type Port struct { handle int } // Close the serial port -func (port *SerialPort) Close() error { +func (port *Port) Close() error { port.releaseExclusiveAccess() return syscall.Close(port.handle) } @@ -30,18 +30,18 @@ func (port *SerialPort) Close() error { // // The Read function blocks until (at least) one byte is received from // the serial port or an error occurs. -func (port *SerialPort) Read(p []byte) (n int, err error) { +func (port *Port) Read(p []byte) (n int, err error) { return syscall.Read(port.handle, p) } // Send the content of the data byte array to the serial port. // Returns the number of bytes written. -func (port *SerialPort) Write(p []byte) (n int, err error) { +func (port *Port) Write(p []byte) (n int, err error) { return syscall.Write(port.handle, p) } // SetMode sets all parameters of the serial port -func (port *SerialPort) SetMode(mode *Mode) error { +func (port *Port) SetMode(mode *Mode) error { settings, err := port.getTermSettings() if err != nil { return err @@ -62,7 +62,7 @@ func (port *SerialPort) SetMode(mode *Mode) error { } // OpenPort opens the serial port using the specified modes -func OpenPort(portName string, mode *Mode) (*SerialPort, error) { +func OpenPort(portName string, mode *Mode) (*Port, error) { h, err := syscall.Open(portName, syscall.O_RDWR|syscall.O_NOCTTY|syscall.O_NDELAY, 0) if err != nil { switch err { @@ -73,7 +73,7 @@ func OpenPort(portName string, mode *Mode) (*SerialPort, error) { } return nil, err } - port := &SerialPort{ + port := &Port{ handle: h, } @@ -230,20 +230,20 @@ func setRawMode(settings *syscall.Termios) { // native syscall wrapper functions -func (port *SerialPort) getTermSettings() (*syscall.Termios, error) { +func (port *Port) getTermSettings() (*syscall.Termios, error) { settings := &syscall.Termios{} err := ioctl(port.handle, ioctlTcgetattr, uintptr(unsafe.Pointer(settings))) return settings, err } -func (port *SerialPort) setTermSettings(settings *syscall.Termios) error { +func (port *Port) setTermSettings(settings *syscall.Termios) error { return ioctl(port.handle, ioctlTcsetattr, uintptr(unsafe.Pointer(settings))) } -func (port *SerialPort) acquireExclusiveAccess() error { +func (port *Port) acquireExclusiveAccess() error { return ioctl(port.handle, syscall.TIOCEXCL, 0) } -func (port *SerialPort) releaseExclusiveAccess() error { +func (port *Port) releaseExclusiveAccess() error { return ioctl(port.handle, syscall.TIOCNXCL, 0) } diff --git a/serial_windows.go b/serial_windows.go index 01d4ca4..b2cff41 100644 --- a/serial_windows.go +++ b/serial_windows.go @@ -18,8 +18,7 @@ package serial // import "go.bug.st/serial" import "syscall" -// opaque type that implements SerialPort interface for Windows -type SerialPort struct { +type Port struct { handle syscall.Handle } @@ -56,11 +55,11 @@ func GetPortsList() ([]string, error) { return list, nil } -func (port *SerialPort) Close() error { +func (port *Port) Close() error { return syscall.CloseHandle(port.handle) } -func (port *SerialPort) Read(p []byte) (int, error) { +func (port *Port) Read(p []byte) (int, error) { var readed uint32 params := &DCB{} for { @@ -83,7 +82,7 @@ func (port *SerialPort) Read(p []byte) (int, error) { } } -func (port *SerialPort) Write(p []byte) (int, error) { +func (port *Port) Write(p []byte) (int, error) { var writed uint32 err := syscall.WriteFile(port.handle, p, &writed, nil) return int(writed), err @@ -171,7 +170,7 @@ const ( TWOSTOPBITS = 2 ) -func (port *SerialPort) SetMode(mode *Mode) error { +func (port *Port) SetMode(mode *Mode) error { params := DCB{} if GetCommState(port.handle, ¶ms) != nil { port.Close() @@ -196,7 +195,7 @@ func (port *SerialPort) SetMode(mode *Mode) error { return nil } -func OpenPort(portName string, mode *Mode) (*SerialPort, error) { +func OpenPort(portName string, mode *Mode) (*Port, error) { portName = "\\\\.\\" + portName path, err := syscall.UTF16PtrFromString(portName) if err != nil { @@ -219,7 +218,7 @@ func OpenPort(portName string, mode *Mode) (*SerialPort, error) { return nil, err } // Create the serial port - port := &SerialPort{ + port := &Port{ handle: handle, }