From 9fee0ec4ca0c5b7a334cc29dbb58e76c7a4c736e Mon Sep 17 00:00:00 2001 From: Michiel Van Der Kolk Date: Mon, 11 Jul 2005 15:42:37 +0000 Subject: Songdb java version, source. only 1.5 compatible git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7101 a1c6a512-1295-4272-9138-f99709370657 --- songdbj/de/jarnbjo/vorbis/Mode.java | 75 +++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 songdbj/de/jarnbjo/vorbis/Mode.java (limited to 'songdbj/de/jarnbjo/vorbis/Mode.java') diff --git a/songdbj/de/jarnbjo/vorbis/Mode.java b/songdbj/de/jarnbjo/vorbis/Mode.java new file mode 100644 index 0000000000..ab88944a25 --- /dev/null +++ b/songdbj/de/jarnbjo/vorbis/Mode.java @@ -0,0 +1,75 @@ +/* + * $ProjectName$ + * $ProjectRevision$ + * ----------------------------------------------------------- + * $Id$ + * ----------------------------------------------------------- + * + * $Author$ + * + * Description: + * + * Copyright 2002-2003 Tor-Einar Jarnbjo + * ----------------------------------------------------------- + * + * Change History + * ----------------------------------------------------------- + * $Log$ + * Revision 1.1 2005/07/11 15:42:36 hcl + * Songdb java version, source. only 1.5 compatible + * + * Revision 1.1.1.1 2004/04/04 22:09:12 shred + * First Import + * + * Revision 1.2 2003/03/16 01:11:12 jarnbjo + * no message + * + * + */ + +package de.jarnbjo.vorbis; + +import java.io.*; + +import de.jarnbjo.util.io.*; + +class Mode { + + private boolean blockFlag; + private int windowType, transformType, mapping; + + protected Mode(BitInputStream source, SetupHeader header) throws VorbisFormatException, IOException { + blockFlag=source.getBit(); + windowType=source.getInt(16); + transformType=source.getInt(16); + mapping=source.getInt(8); + + if(windowType!=0) { + throw new VorbisFormatException("Window type = "+windowType+", != 0"); + } + + if(transformType!=0) { + throw new VorbisFormatException("Transform type = "+transformType+", != 0"); + } + + if(mapping>header.getMappings().length) { + throw new VorbisFormatException("Mode mapping number is higher than total number of mappings."); + } + } + + protected boolean getBlockFlag() { + return blockFlag; + } + + protected int getWindowType() { + return windowType; + } + + protected int getTransformType() { + return transformType; + } + + protected int getMapping() { + return mapping; + } +} \ No newline at end of file -- cgit v1.2.3