This is MiscSerialPort.rtf in view mode; [Download] [Up]
Release 2.0 Copyright ©1994 by Matt Brandt. All Rights Reserved. MiscSerialPort Inherits From: Object Declared In: misckit/MiscSerialPort.h Class Description The MiscSerialPort class provides a wrapper around the serial ports in NeXTSTEP. It includes the ability to set the port's baud rate, parity, bits per character and to control the modem line DTR. A MiscSerialPort is initialized with the init method and then the various parameters are established for the line. A delegate provides a means to pass received characters to another object to be processed. Sending data is done by calling the ±sendChars:length: method. The line may be paused using the ±suspend method and restarted by the ±continue method in the event that it is desired to allow another mechanism (such as a subprocess) to have access to the port for a time. Instance Variables char portName[64]; BOOL connected; BOOL suspended; int fd; id delegate; int currentBaud; int currentParity; DPSTimedEntry *tentry; portName Full path to the serial device. (ex. "/dev/cufa") connected YES if the portName device file is currently open. suspended YES if the port has been paused by ±suspend. fd file descriptor for the portName device file. delegate points to the delegate object. This object must answer the methods described for the MiscSerialPortDelegate category. The delegate can be nil if you do not wish to receive delegate messages. currentBaud current baud rate from the constants in <sgtty.h> currentParity parity for the port as described in MiscSerialPort.h tentry a timed entry used to poll for received data Method Types Initializing the serial port ± init Setting and examining parameters ± setDeviceName: ± setBaud: ± setBaudByName: ± setParity: ± setDelegate: ± (int)filedes ± (BOOL)suspended Controlling Communications ± (BOOL)connect ± disconnect ± suspend ± resume ± continue ± dropDTR ± raiseDTR Sending Data ± transmitChars:length: Delegate methods ± receiveChars:length: ± hangup Instance Methods connect - (BOOL)connect Opens the port with the current parameters. Be sure to set a valid delegate before doing this. Returns YES if the connect succeded and NO if the connection failed. See also: - disconnect continue - continue Synonym for ±resume. This method is retained for backward compatability and is considered obsolete due to the fact that continue is a C language keyword. Future use is discouraged. See also: - suspend, ± resume delegate - delegate Returns the pointer to the current delegate. See also: - setDelegate: disconnect - disconnect Closes the serial port. Returns self. See also: -connect init - init Initializes an instance of MiscSerialPort. Returns self. dropDTR - dropDTR Lowers the DTR line to the port. This is usefull for hanging up on a modem. Returns self. See also: -raiseDTR filedes - (int)filedes Returns the file descriptor for an open port. raiseDTR - raiseDTR Raises the DTR line for the port. Returns self. See also: - dropDTR continue - continue Restarts communications after the port has been suspended. Returns self. See also: - suspend setBaud: - setBaud: (int)baud Sets the baudrate for the port. Baud should be one of the following values as declared in <sgtty.h>. B50 1 B75 2 B110 3 B134 4 B150 5 B200 6 B300 7 B600 8 B1200 9 B1800 10 B2400 11 B4800 12 B9600 13 B19200 14 B38400 15 B14400 16 B28800 17 B43200 18 B57600 19 Note that not all hardware can support the higher baud rates. The 68030 machines in particular have difficulty maintaining baudrates higher than 9600. Returns self. See also: - setBaudByName: setBaudByName: - setBaudByName: (const char *)speed Allows the setting of baud rate by a string value such as "9600". The valid strings are given below, note that not all possible baud rates are supported, only those that are "normal" for terminal use. valid strings are: "110","300","600","1200","2400","4800","9600","19200","38400","57600". Returns self unless an invalid string was passed in which case the baud rate is not changed and the return value is nil. See also: - setBaud: setDelegate: - setDelegate: theConsumer Sets the object that received characters and status changes will be sent to. Returns self. See also: - delegate setDeviceName: - setDeviceName: (const char *)name Sets the path to the port's device file. This should be done before calling connect. If the port is connected and this routine is called with a name that does not match the current name then the port will be disconnected and reconnected (this is not recomended since there is no way to get the connect status). Returns self. setParity - setParity: (int)parity Sets the parity of the port. This is currently stubbed in and not implemented. Returns self. suspend - suspend Disables reception from the port. The port device file remains open and modem signals do not change. Transmission through the ±transmitChars:length: method is still possible. This is usefull if you want to pass the port to a subprocess and then resume reception after the process terminates. Returns self. See also: ± resume transmitChars:length: - transmitChars: (const char *)buffer length: (int)length Transmits a buffer of characters through the port. Returns self. Delegate Methods receiveChars: length: - receiveChars: (char *)buffer length: (int)length Called when characters are received on the port to give the delegate a chance to process them. . Returns self. hangup - hangup Called on a high to low transition of DCD. Returns self. Note: this method does not currently work due to the inability to sense DCD with the NeXT serial drivers.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.