Mercurial > projects > dwt-linux
annotate dwt/dwthelper/ByteArrayOutputStream.d @ 262:e10de397beb1
ADD version TANGOSVN
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sun, 06 Jul 2008 15:33:12 +0200 |
parents | cc1d3de0e80b |
children | d472fae79005 |
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; |
9 version(TANGOSVN) | |
10 import tango.io.Buffer; | |
11 } | |
12 else{ | |
13 import tango.io.GrowBuffer; | |
14 } | |
13 | 15 |
16 public class ByteArrayOutputStream : dwt.dwthelper.OutputStream.OutputStream { | |
17 | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
18 protected GrowBuffer buffer; |
13 | 19 |
20 public this (){ | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
21 buffer = new GrowBuffer(); |
13 | 22 } |
23 | |
24 public this ( int par_size ){ | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
25 buffer = new GrowBuffer(par_size); |
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( int b ){ |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
29 byte[1] a; |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
30 a[0] = b & 0xFF; |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
31 buffer.append(a); |
13 | 32 } |
33 | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
34 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
|
35 buffer.append( b[ off .. off + len ]); |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
36 } |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
37 |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
38 public synchronized override void write( byte[] b ){ |
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
39 buffer.append( b ); |
13 | 40 } |
41 | |
42 public synchronized void writeTo( dwt.dwthelper.OutputStream.OutputStream out_KEYWORDESCAPE ){ | |
43 implMissing( __FILE__, __LINE__ ); | |
44 } | |
45 | |
46 public synchronized void reset(){ | |
47 implMissing( __FILE__, __LINE__ ); | |
48 } | |
49 | |
50 public synchronized byte[] toByteArray(){ | |
257
cc1d3de0e80b
Fix: make ImageLoader.save work
Frank Benoit <benoit@tionex.de>
parents:
238
diff
changeset
|
51 return cast(byte[])buffer.slice(); |
13 | 52 } |
53 | |
54 public int size(){ | |
55 implMissing( __FILE__, __LINE__ ); | |
56 return 0; | |
57 } | |
58 | |
238 | 59 public override String toString(){ |
13 | 60 implMissing( __FILE__, __LINE__ ); |
61 return null; | |
62 } | |
63 | |
238 | 64 public String toString( String enc ){ |
13 | 65 implMissing( __FILE__, __LINE__ ); |
66 return null; | |
67 } | |
68 | |
238 | 69 public String toString( int hibyte ){ |
13 | 70 implMissing( __FILE__, __LINE__ ); |
71 return null; | |
72 } | |
73 | |
74 public override void close(){ | |
75 implMissing( __FILE__, __LINE__ ); | |
76 } | |
77 } | |
78 | |
79 |