KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > eclipse > swt > internal > image > JPEGSegment


1 /*******************************************************************************
2  * Copyright (c) 2000, 2003 IBM Corporation and others.
3  * All rights reserved. This program and the accompanying materials
4  * are made available under the terms of the Eclipse Public License v1.0
5  * which accompanies this distribution, and is available at
6  * http://www.eclipse.org/legal/epl-v10.html
7  *
8  * Contributors:
9  * IBM Corporation - initial API and implementation
10  *******************************************************************************/

11 package org.eclipse.swt.internal.image;
12
13
14 class JPEGSegment {
15     public byte[] reference;
16
17     JPEGSegment() {
18     }
19     
20     public JPEGSegment(byte[] reference) {
21         this.reference = reference;
22     }
23     
24     public int signature() {
25         return 0;
26     }
27     
28     public boolean verify() {
29         return getSegmentMarker() == signature();
30     }
31     
32     public int getSegmentMarker() {
33         return ((reference[0] & 0xFF) << 8 | (reference[1] & 0xFF));
34     }
35     
36     public void setSegmentMarker(int marker) {
37         reference[0] = (byte)((marker & 0xFF00) >> 8);
38         reference[1] = (byte)(marker & 0xFF);
39     }
40     
41     public int getSegmentLength() {
42         return ((reference[2] & 0xFF) << 8 | (reference[3] & 0xFF));
43     }
44     
45     public void setSegmentLength(int length) {
46         reference[2] = (byte)((length & 0xFF00) >> 8);
47         reference[3] = (byte)(length & 0xFF);
48     }
49     
50     public boolean writeToStream(LEDataOutputStream byteStream) {
51         try {
52             byteStream.write(reference);
53             return true;
54         } catch (Exception JavaDoc e) {
55             return false;
56         }
57     }
58 }
59
Popular Tags