annotate dwt/dwthelper/ByteArrayOutputStream.d @ 248:d10ff1f47f84

Add: version TANGOSVN
author Frank Benoit <benoit@tionex.de>
date Sun, 06 Jul 2008 16:42:54 +0200
parents 32a6819fef61
children a63e2cd5485e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
1 /**
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
2 * Authors: Frank Benoit <keinfarbton@googlemail.com>
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
3 */
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
4 module dwt.dwthelper.ByteArrayOutputStream;
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
5
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
6 public import dwt.dwthelper.OutputStream;
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
7 import dwt.dwthelper.utils;
248
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
8 import tango.io.Buffer;
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
9 version(TANGOSVN) {
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
10 import tango.io.Buffer;
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
11 }
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
12 else{
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
13 import tango.io.GrowBuffer;
d10ff1f47f84 Add: version TANGOSVN
Frank Benoit <benoit@tionex.de>
parents: 242
diff changeset
14 }
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
15
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
16 public class ByteArrayOutputStream : dwt.dwthelper.OutputStream.OutputStream {
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
17
242
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
18 protected GrowBuffer buffer;
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
19
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
20 public this (){
242
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
21 buffer = new GrowBuffer();
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
22 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
23
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
24 public this ( int par_size ){
242
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
25 buffer = new GrowBuffer(par_size);
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
26 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
27
242
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
28 public synchronized override void write( int b ){
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
29 byte[1] a;
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
30 a[0] = b & 0xFF;
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
31 buffer.append(a);
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
32 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
33
242
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
34 public synchronized override void write( byte[] b, int off, int len ){
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
35 buffer.append( b[ off .. off + len ]);
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
36 }
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
37
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
38 public synchronized override void write( byte[] b ){
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
39 buffer.append( b );
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
40 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
41
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
42 public synchronized void writeTo( dwt.dwthelper.OutputStream.OutputStream out_KEYWORDESCAPE ){
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
43 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
44 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
45
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
46 public synchronized void reset(){
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
47 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
48 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
49
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
50 public synchronized byte[] toByteArray(){
242
32a6819fef61 Fix implMissing for ImageLoader.save, thx yidabu for reporting.
Frank Benoit <benoit@tionex.de>
parents: 212
diff changeset
51 return cast(byte[])buffer.slice();
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
52 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
53
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
54 public int size(){
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
55 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
56 return 0;
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
57 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
58
212
ab60f3309436 reverted the char[] to String and use the an alias.
Frank Benoit <benoit@tionex.de>
parents: 0
diff changeset
59 public override String toString(){
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
60 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
61 return null;
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
62 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
63
212
ab60f3309436 reverted the char[] to String and use the an alias.
Frank Benoit <benoit@tionex.de>
parents: 0
diff changeset
64 public String toString( String enc ){
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
65 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
66 return null;
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
67 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
68
212
ab60f3309436 reverted the char[] to String and use the an alias.
Frank Benoit <benoit@tionex.de>
parents: 0
diff changeset
69 public String toString( int hibyte ){
0
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
70 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
71 return null;
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
72 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
73
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
74 public override void close(){
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
75 implMissing( __FILE__, __LINE__ );
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
76 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
77 }
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
78
5406a8f6526d Add initial files
John Reimer <terminal.node@gmail.com
parents:
diff changeset
79