Mercurial > projects > dwt-linux
annotate dwt/dwthelper/ByteArrayOutputStream.d @ 276:9d67c3170a58 Release-1
Removed version=TANGOSVN for release 0.99.7
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 26 Jul 2008 02:52:25 +0200 |
parents | d472fae79005 |
children | ee1dd551f5b1 |
rev | line source |
---|---|
13 | 1 /** |
2 * Authors: Frank Benoit <keinfarbton@googlemail.com> | |
3 */ | |
4 module dwt.dwthelper.ByteArrayOutputStream; | |
5 | |
6 public import dwt.dwthelper.OutputStream; | |
7 import dwt.dwthelper.utils; | |
262 | 8 import tango.io.Buffer; |
13 | 9 |
10 public class ByteArrayOutputStream : dwt.dwthelper.OutputStream.OutputStream { | |
11 | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
12 protected GrowBuffer buffer; |
13 | 13 |
14 public this (){ | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
15 buffer = new GrowBuffer(); |
13 | 16 } |
17 | |
18 public this ( int par_size ){ | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
19 buffer = new GrowBuffer(par_size); |
13 | 20 } |
21 | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
22 public synchronized override void write( int b ){ |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
23 byte[1] a; |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
24 a[0] = b & 0xFF; |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
25 buffer.append(a); |
13 | 26 } |
27 | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
28 public synchronized override void write( byte[] b, int off, int len ){ |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
29 buffer.append( b[ off .. off + len ]); |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
30 } |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
31 |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
32 public synchronized override void write( byte[] b ){ |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
33 buffer.append( b ); |
13 | 34 } |
35 | |
36 public synchronized void writeTo( dwt.dwthelper.OutputStream.OutputStream out_KEYWORDESCAPE ){ | |
37 implMissing( __FILE__, __LINE__ ); | |
38 } | |
39 | |
40 public synchronized void reset(){ | |
41 implMissing( __FILE__, __LINE__ ); | |
42 } | |
43 | |
44 public synchronized byte[] toByteArray(){ | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
45 return cast(byte[])buffer.slice(); |
13 | 46 } |
47 | |
48 public int size(){ | |
49 implMissing( __FILE__, __LINE__ ); | |
50 return 0; | |
51 } | |
52 | |
238 | 53 public override String toString(){ |
13 | 54 implMissing( __FILE__, __LINE__ ); |
55 return null; | |
56 } | |
57 | |
238 | 58 public String toString( String enc ){ |
13 | 59 implMissing( __FILE__, __LINE__ ); |
60 return null; | |
61 } | |
62 | |
238 | 63 public String toString( int hibyte ){ |
13 | 64 implMissing( __FILE__, __LINE__ ); |
65 return null; | |
66 } | |
67 | |
68 public override void close(){ | |
69 implMissing( __FILE__, __LINE__ ); | |
70 } | |
71 } | |
72 | |
73 |