*** empty log message ***
authorClaus Gittinger <cg@exept.de>
Thu, 24 Apr 1997 19:47:57 +0200
changeset 561 bb8103acb292
parent 560 4cce4f58bbbf
child 562 921472d151d9
*** empty log message ***
PCXReader.st
--- a/PCXReader.st	Thu Apr 24 18:08:20 1997 +0200
+++ b/PCXReader.st	Thu Apr 24 19:47:57 1997 +0200
@@ -181,8 +181,8 @@
     compression := header at:3.
 "/    'compression=' print. compression printNL.
     (#(0 1) includes:compression) ifFalse:[
-	self error:'PCXREADER: unknown compression'.
-	^ nil
+        self error:'PCXREADER: unknown compression'.
+        ^ nil
     ].
 
     inDepth := header at:4.
@@ -199,10 +199,10 @@
      So its not (yet) implemented
     "
     ((inDepth ~~ 8) or:[nPlanes ~~ 1]) ifTrue:[
-	'PCXReader: depth: ' errorPrint. inDepth errorPrint. 
-	' planes:' errorPrint. nPlanes errorPrintNL.
-	'PCXReader: can only handle 1-plane 256 color images' errorPrintNL.
-	^ nil
+        'PCXReader: depth: ' errorPrint. inDepth errorPrint. 
+        ' planes:' errorPrint. nPlanes errorPrintNL.
+        'PCXReader: can only handle 1-plane 256 color images' errorPrintNL.
+        ^ nil
     ].
 
     xmin := header wordAt:5 MSB:false. 
@@ -216,134 +216,134 @@
 "/    'height=' print. width printNL.
 
     (version == 2) ifTrue:[
-	"read the 16-entry colormap"
+        "read the 16-entry colormap"
 
-	rawMap := ByteArray uninitializedNew:(16*3).
-	rawMap replaceFrom:1 to:(16*3) with:header startingAt:17.
-	rMap := Array new:16.
-	gMap := Array new:16.
-	bMap := Array new:16.
-	srcIndex := 1.
-	1 to:16 do:[:i |
-	    rMap at:i put:(rawMap at:srcIndex).
-	    srcIndex := srcIndex + 1.
-	    gMap at:i put:(rawMap at:srcIndex).
-	    srcIndex := srcIndex + 1.
-	    bMap at:i put:(rawMap at:srcIndex).
-	    srcIndex := srcIndex + 1.
-	].
+        rawMap := ByteArray uninitializedNew:(16*3).
+        rawMap replaceFrom:1 to:(16*3) with:header startingAt:17.
+        rMap := ByteArray new:16.
+        gMap := ByteArray new:16.
+        bMap := ByteArray new:16.
+        srcIndex := 1.
+        1 to:16 do:[:i |
+            rMap at:i put:(rawMap at:srcIndex).
+            srcIndex := srcIndex + 1.
+            gMap at:i put:(rawMap at:srcIndex).
+            srcIndex := srcIndex + 1.
+            bMap at:i put:(rawMap at:srcIndex).
+            srcIndex := srcIndex + 1.
+        ].
     ].
 
     compression == 1 ifTrue:[
-	data := dataBytes := ByteArray uninitializedNew:(height * srcBytesPerRow).
+        data := dataBytes := ByteArray uninitializedNew:(height * srcBytesPerRow).
 
-	buffer := ByteArray uninitializedNew:4096.
-	bufferIndex := 1.
-	bendIndex := 1.
+        buffer := ByteArray uninitializedNew:4096.
+        bufferIndex := 1.
+        bendIndex := 1.
 
-	rowIndex := 1.
-	h := height.
-	1 to:h do:[:row |
-	    dstIndex := rowIndex.
-	    endIndex := dstIndex + srcBytesPerRow.
-	    [dstIndex < endIndex] whileTrue:[
-		bufferIndex == bendIndex ifTrue:[
-		    nBuffer := inStream nextBytes:4096 into:buffer.
-		    bufferIndex := 1.
-		    bendIndex := nBuffer + 1.
-		].
-		byte := buffer at:bufferIndex.
-		bufferIndex := bufferIndex + 1.
-		((byte bitAnd:2r11000000) ~~ 2r11000000) ifTrue:[
-		    dataBytes at:dstIndex put:byte.
-		    dstIndex := dstIndex + 1.
-		] ifFalse:[
-		    nByte := byte bitAnd:2r00111111.
-		    bufferIndex == bendIndex ifTrue:[
-			nBuffer := inStream nextBytes:4096 into:buffer.
-			bufferIndex := 1.
-			bendIndex := nBuffer + 1.
-		    ].
-		    value := buffer at:bufferIndex.
-		    bufferIndex := bufferIndex + 1.
-		    idx2 := ((dstIndex + nByte) min:endIndex) - 1.
-		    dataBytes from:dstIndex to:idx2 put:value.
-		    dstIndex := dstIndex + nByte.
-		].
-	    ].
-	    rowIndex := endIndex.
-	].
+        rowIndex := 1.
+        h := height.
+        1 to:h do:[:row |
+            dstIndex := rowIndex.
+            endIndex := dstIndex + srcBytesPerRow.
+            [dstIndex < endIndex] whileTrue:[
+                bufferIndex == bendIndex ifTrue:[
+                    nBuffer := inStream nextBytes:4096 into:buffer.
+                    bufferIndex := 1.
+                    bendIndex := nBuffer + 1.
+                ].
+                byte := buffer at:bufferIndex.
+                bufferIndex := bufferIndex + 1.
+                ((byte bitAnd:2r11000000) ~~ 2r11000000) ifTrue:[
+                    dataBytes at:dstIndex put:byte.
+                    dstIndex := dstIndex + 1.
+                ] ifFalse:[
+                    nByte := byte bitAnd:2r00111111.
+                    bufferIndex == bendIndex ifTrue:[
+                        nBuffer := inStream nextBytes:4096 into:buffer.
+                        bufferIndex := 1.
+                        bendIndex := nBuffer + 1.
+                    ].
+                    value := buffer at:bufferIndex.
+                    bufferIndex := bufferIndex + 1.
+                    idx2 := ((dstIndex + nByte) min:endIndex) - 1.
+                    dataBytes from:dstIndex to:idx2 put:value.
+                    dstIndex := dstIndex + nByte.
+                ].
+            ].
+            rowIndex := endIndex.
+        ].
 
-	"/ have to compress - above code reads srcBytesPerRow
-	"/ (to keep in sync with RLE); but we want width bytesPerRow
-	"/ Can compress in the data-area; leftover pixels are simply ignored
-	"/ by other image processing code
-	"/
-	srcBytesPerRow ~~ width ifTrue:[
-	    dstIndex := width + 1.
-	    srcIndex := srcBytesPerRow + 1.
-	    2 to:h do:[:row |
-		dataBytes replaceFrom:dstIndex to:dstIndex+width-1 with:dataBytes startingAt:srcIndex.
-		dstIndex := dstIndex + width.
-		srcIndex := srcIndex + srcBytesPerRow
-	    ]
-	].
-	nBuffer := endIndex - bufferIndex.
+        "/ have to compress - above code reads srcBytesPerRow
+        "/ (to keep in sync with RLE); but we want width bytesPerRow
+        "/ Can compress in the data-area; leftover pixels are simply ignored
+        "/ by other image processing code
+        "/
+        srcBytesPerRow ~~ width ifTrue:[
+            dstIndex := width + 1.
+            srcIndex := srcBytesPerRow + 1.
+            2 to:h do:[:row |
+                dataBytes replaceFrom:dstIndex to:dstIndex+width-1 with:dataBytes startingAt:srcIndex.
+                dstIndex := dstIndex + width.
+                srcIndex := srcIndex + srcBytesPerRow
+            ]
+        ].
+        nBuffer := endIndex - bufferIndex.
     ] ifFalse:[
-	"
-	 uncompressed; actually untested ...
-	"
-	data := dataBytes := ByteArray uninitializedNew:(height * width).
-	srcBytesPerRow ~~ width ifTrue:[
-	    dstIndex := 1.
-	    1 to:h do:[:row |
-		inStream nextBytes:width into:data startingAt:dstIndex.
-		dstIndex := dstIndex + width.
-		inStream skip:(srcBytesPerRow - width).
-	    ]
-	] ifFalse:[
-	    inStream nextBytes:(height * width) into:data.
-	].
-	nBuffer := 0.
+        "
+         uncompressed; actually untested ...
+        "
+        data := dataBytes := ByteArray uninitializedNew:(height * width).
+        srcBytesPerRow ~~ width ifTrue:[
+            dstIndex := 1.
+            1 to:h do:[:row |
+                inStream nextBytes:width into:data startingAt:dstIndex.
+                dstIndex := dstIndex + width.
+                inStream skip:(srcBytesPerRow - width).
+            ]
+        ] ifFalse:[
+            inStream nextBytes:(height * width) into:data.
+        ].
+        nBuffer := 0.
     ].
 
     (version == 5) ifTrue:[
-	"read the 256-entry colormap"
+        "read the 256-entry colormap"
 
-	nBuffer ~~ 0 ifTrue:[
-	    byte := buffer at:bufferIndex.
-	    bufferIndex := bufferIndex + 1. nBuffer := nBuffer - 1.
-	] ifFalse:[
-	    byte := inStream next
-	].
+        nBuffer ~~ 0 ifTrue:[
+            byte := buffer at:bufferIndex.
+            bufferIndex := bufferIndex + 1. nBuffer := nBuffer - 1.
+        ] ifFalse:[
+            byte := inStream next
+        ].
 
-	byte == 16r0C ifFalse:[
-	   'PCXREADER: no valid 256-entry palette (got' errorPrint. 
-	   byte errorPrint. '; expected ' errorPrint. 16rC0 errorPrint. ')' errorPrintNL.
-	].
-	rawMap := ByteArray uninitializedNew:(256*3).
-	nBuffer ~~ 0 ifTrue:[
-	    mapSize := buffer size - bufferIndex + 1.
-	    mapSize := mapSize min:(256*3).
-	    rawMap replaceFrom:1 to:mapSize with:buffer startingAt:bufferIndex.
-	    nBuffer < (256*3) ifTrue:[
-		inStream nextBytes:((256*3)-nBuffer) into:rawMap startingAt:nBuffer+1
-	    ]
-	] ifFalse:[
-	    inStream nextBytes:(256*3) into:rawMap.
-	].
-	rMap := Array new:256.
-	gMap := Array new:256.
-	bMap := Array new:256.
-	srcIndex := 1.
-	1 to:256 do:[:i |
-	    rMap at:i put:(rawMap at:srcIndex).
-	    srcIndex := srcIndex + 1.
-	    gMap at:i put:(rawMap at:srcIndex).
-	    srcIndex := srcIndex + 1.
-	    bMap at:i put:(rawMap at:srcIndex).
-	    srcIndex := srcIndex + 1.
-	].
+        byte == 16r0C ifFalse:[
+           'PCXREADER: no valid 256-entry palette (got' errorPrint. 
+           byte errorPrint. '; expected ' errorPrint. 16rC0 errorPrint. ')' errorPrintNL.
+        ].
+        rawMap := ByteArray uninitializedNew:(256*3).
+        nBuffer ~~ 0 ifTrue:[
+            mapSize := buffer size - bufferIndex + 1.
+            mapSize := mapSize min:(256*3).
+            rawMap replaceFrom:1 to:mapSize with:buffer startingAt:bufferIndex.
+            nBuffer < (256*3) ifTrue:[
+                inStream nextBytes:((256*3)-nBuffer) into:rawMap startingAt:nBuffer+1
+            ]
+        ] ifFalse:[
+            inStream nextBytes:(256*3) into:rawMap.
+        ].
+        rMap := Array new:256.
+        gMap := Array new:256.
+        bMap := Array new:256.
+        srcIndex := 1.
+        1 to:256 do:[:i |
+            rMap at:i put:(rawMap at:srcIndex).
+            srcIndex := srcIndex + 1.
+            gMap at:i put:(rawMap at:srcIndex).
+            srcIndex := srcIndex + 1.
+            bMap at:i put:(rawMap at:srcIndex).
+            srcIndex := srcIndex + 1.
+        ].
     ].
 
     photometric := #palette.
@@ -357,12 +357,12 @@
      i inspect.
     "
 
-    "Modified: 16.4.1997 / 22:26:55 / cg"
+    "Modified: 24.4.1997 / 19:38:52 / cg"
 ! !
 
 !PCXReader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview2/PCXReader.st,v 1.20 1997-04-16 20:57:02 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview2/PCXReader.st,v 1.21 1997-04-24 17:47:57 cg Exp $'
 ! !
 PCXReader initialize!