Back to index

wims  3.65+svn20090927
SimpleByteBuffer.java
Go to the documentation of this file.
00001 package rene.util;
00002 public class SimpleByteBuffer
00003 {      private int Size,N;
00004        private byte Buf[];
00005        public SimpleByteBuffer (int size)
00006        {      Size=size;
00007               Buf=new byte[size];
00008               N=0;
00009        }
00010        public SimpleByteBuffer (byte b[])
00011        {      Size=b.length;
00012               Buf=b;
00013               N=0;
00014        }
00015        public void append (byte c)
00016        {      if (N<Size) Buf[N++]=c;
00017               else
00018               {      Size=2*Size;
00019                      byte NewBuf[]=new byte[Size];
00020                      for (int i=0; i<N; i++) NewBuf[i]=Buf[i];
00021                      Buf=NewBuf;
00022                      Buf[N++]=c;
00023               }
00024        }
00025        public void clear ()
00026        {      N=0;
00027        }
00028        public byte[] getBuffer ()
00029        {      return Buf;
00030        }
00031        public byte[] getByteArray ()
00032        {      byte b[]=new byte[N];
00033               for (int i=0; i<N; i++) b[i]=Buf[i];
00034               return b;
00035        }
00036        public int size ()
00037        {      return N;
00038        }
00039 }
00040