home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 3 Comm
/
03-Comm.zip
/
ASYNCH.ZIP
/
PMLNCNTR.CLS
< prev
next >
Wrap
Text File
|
1990-10-29
|
1KB
|
55 lines
PMStructure subclass: #PMLineControl
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: '' !
!PMLineControl class methods !
sizeInBytes
"Private - Answer the size of a PM bitmap info
header record."
^4! !
!PMLineControl methods !
dataBits
"Answer the number of data bits."
^self byteAtOffset: 0!
parity
"Answer parity as a Character:
$n - none $o - odd $e - even $m - mark $s - space."
^#($n $o $e $m $s) at: ((self byteAtOffset: 1) + 1)!
setDataBits: anInteger
"Set the number of data bits to anInteger."
(anInteger < 5 or: [anInteger > 8])
ifTrue: [^self error: 'Data bits range from 5 to 8'].
self byteAtOffset: 0 put: anInteger!
setParity: aCharacter
"Set parity according to aCharacter:
$n - none $o - odd $e - even $m - mark $s - space."
| c |
c := aCharacter asLowerCase.
self byteAtOffset: 1
put: (#($n $o $e $m $s) findFirst: [:i | i = c]) - 1!
setStopBits: aNumber
"Set the number of stop bits."
self byteAtOffset: 2
put: (#(1 1.5 2) findFirst: [:i | i = aNumber]) - 1!
stopBits
"Answer the number of stop bits."
^#(1 1.5 2) at: ((self byteAtOffset: 2) + 1)!
transmittingBreak
"Answer a boolean indicating whether a break character is
being sent."
^(self byteAtOffset: 3) ~= 0! !