FileDocCategorySizeDatePackage
AsfExtHeaderReader.javaAPI DocJaudiotagger 2.0.42385Wed Mar 30 16:11:50 BST 2011org.jaudiotagger.audio.asf.io

AsfExtHeaderReader

public class AsfExtHeaderReader extends ChunkContainerReader
This reader reads an ASF header extension object from an {@link InputStream} and creates an {@link AsfExtendedHeader} object.
author
Christian Laireiter

Fields Summary
private static final org.jaudiotagger.audio.asf.data.GUID[]
APPLYING
The GUID this reader {@linkplain #getApplyingIds() applies to}
Constructors Summary
public AsfExtHeaderReader(List toRegister, boolean readChunkOnce)
Creates a reader instance, which only utilizes the given list of chunk readers.

param
toRegister List of {@link ChunkReader} class instances, which are to be utilized by the instance.
param
readChunkOnce if true, each chunk type (identified by chunk GUID) will handled only once, if a reader is available, other chunks will be discarded.


                                                                                                                       
     
                
               
        super(toRegister, readChunkOnce);
    
Methods Summary
public booleancanFail()
{@inheritDoc}

        return false;
    
protected org.jaudiotagger.audio.asf.data.AsfExtendedHeadercreateContainer(long streamPosition, java.math.BigInteger chunkLength, java.io.InputStream stream)
{@inheritDoc}

        Utils.readGUID(stream); // First reserved field (should be a specific
        // GUID.
        Utils.readUINT16(stream); // Second reserved field (should always be 6)
        final long extensionSize = Utils.readUINT32(stream);
        assert extensionSize == 0 || extensionSize >= 24;
        assert chunkLength.subtract(BigInteger.valueOf(46)).longValue() == extensionSize;
        return new AsfExtendedHeader(streamPosition, chunkLength);
    
public org.jaudiotagger.audio.asf.data.GUID[]getApplyingIds()
{@inheritDoc}

        return APPLYING.clone();