Media Authoring
with Java API

tv.amwa.maj.entity
Class TIFFDescriptor

java.lang.Object
  extended by tv.amwa.maj.entity.InterchangeObject
      extended by tv.amwa.maj.entity.EssenceDescriptor
          extended by tv.amwa.maj.entity.AAFFileDescriptor
              extended by tv.amwa.maj.entity.TIFFDescriptor
All Implemented Interfaces:
Serializable, Cloneable, MAJCommon, AAFFileDescriptor, EssenceDescriptor, InterchangeObject, TIFFDescriptor, XMLSerializable

@AAFClass(uuid1=218169601,
          uuid2=257,
          uuid3=11008,
          uuid4={6,14,43,52,2,6,1,1},
          definedName="TIFFDescriptor",
          description="The TIFFDescriptor class specifies that a File SourceMob is associated with video essence formatted according to the TIFF specification.")
public class TIFFDescriptor
extends AAFFileDescriptor
implements TIFFDescriptor, Serializable, Cloneable, MAJCommon

Implements the description of a file of video essence formatted according to the Tagged Image File Format (TIFF) specification.

THE COMMENTS FOR THIS CLASS ARE INCOMPLETE.

Author:
Richard Cartwright
See Also:
Serialized Form

Nested Class Summary
static class TIFFDescriptor.XMLHandler
           
 
Nested classes/interfaces inherited from class tv.amwa.maj.entity.AAFFileDescriptor
AAFFileDescriptor.FileDescriptorXMLHandler
 
Nested classes/interfaces inherited from class tv.amwa.maj.entity.EssenceDescriptor
EssenceDescriptor.EssenceDescriptorXMLHandler, EssenceDescriptor.LocatorXMLHandler, EssenceDescriptor.SubDescriptorXMLHandler
 
Nested classes/interfaces inherited from class tv.amwa.maj.entity.InterchangeObject
InterchangeObject.InterchangeObjectXMLHandler
 
Field Summary
static String TIFFDESCRIPTOR_TAG
           
 
Fields inherited from class tv.amwa.maj.entity.AAFFileDescriptor
FILEDESCRIPTOR_ITEM
 
Fields inherited from class tv.amwa.maj.entity.EssenceDescriptor
ESSENCEDESCRIPTOR_ITEM
 
Fields inherited from interface tv.amwa.maj.iface.TIFFDescriptor
LEADINGLINES_DEFAULT, TRAILINGLINES_DEFAULT
 
Constructor Summary
TIFFDescriptor(ContainerDefinition containerFormat, boolean isUniform, boolean isContiguous, byte[] summary)
          Creates and initializes a new TIFF descritpor, which specifies that a file source mob is associated with video essence formatted according to the TIFF specification.
 
Method Summary
 void appendXMLChildren(Node parent)
          Append child elements to the given parent node to serialize the value of an object to an XML fragment.
 TIFFDescriptor clone()
          Creates a cloned copy of this entity.
 boolean equals(Object o)
          Tests to see if the given object is equal to this interchange object.
 boolean getIsContiguous()
          Returns true if essence data is stored in contiguous bytes for the TIFF data described by this TIFF descriptor; otherwise false.
 boolean getIsUniform()
          Returns true if the TIFF data described by this TIFF descriptor has the same number of rows per strip throughout; otherwise false.
 int getJPEGTableID()
          Returns the JPEG table code property of this TIFF descriptor, which specifies the registered JPEG table code.
 int getLeadingLines()
          Returns the number of leading lines of the TIFF descriptor, which specifies the number of leading lines to be thrown away when viewing the TIFF data.
 byte[] getSummary()
          Returns the copy of the TIFF IFD file information of this TIFF descriptor, without the sample data.
 int getSummaryBufferSize()
          Returns the size of the buffer required by the TIFFDescriptor.getSummary() method.
 int getTrailingLines()
          Returns the number of trailing lines of this TIFF descriptor, which specifies the number of trailing lines to be thrown away when viewing the TIFF data.
 int hashCode()
          Returns a hash code value for this interchange object.
 void setIsContiguous(boolean isContiguous)
          Sets whether essence data is stored in contiguous bytes for the TIFF data described by this TIFF descriptor.
 void setIsUniform(boolean isUniform)
          Sets whether the TIFF data described by this TIFF descriptor has the same number of rows per strip throughout.
 void setJPEGTableID(Integer jpegTableID)
          Sets the JPEG table code property of this TIFF descriptor, which specifies the registered JPEG table code.
 void setLeadingLines(Integer leadingLines)
          Sets the number of leading lines of this TIFF descriptor, which specifies the number of leading lines to be thrown away when viewing the TIFF data.
 void setPropertiesFromInterface(TIFFDescriptor castFrom)
           
 void setSummary(byte[] summary)
          Sets the copy of the TIFF IFD file information of this TIFF descriptor, without the sample data.
 void setTrailingLines(Integer trailingLines)
          Sets the number of trailing lines of this TIFF descriptor, which specifies the number of trailing lines to be thrown away when viewing the TIFF data.
 
Methods inherited from class tv.amwa.maj.entity.AAFFileDescriptor
describesStaticEssence, getCodecDefinition, getContainerFormat, getLength, getLinkedSlotID, getSampleRate, setCodecDefinition, setContainerFormat, setDescribesStaticEssence, setDescribesTimeVaryingEssence, setLength, setLinkedSlotID, setPropertiesFromInterface, setSampleRate
 
Methods inherited from class tv.amwa.maj.entity.EssenceDescriptor
appendLocator, appendSubDescriptor, countLocators, countSubDescriptors, getLocatorAt, getLocators, getSubDescriptorAt, getSubDescriptors, insertLocatorAt, insertSubDescriptorAt, prependLocator, prependSubDescriptor, removeLocatorAt, removeSubDescriptorAt, setPropertiesFromInterface
 
Methods inherited from class tv.amwa.maj.entity.InterchangeObject
castFromInterface, countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, registerImplementation, setPropertiesFromInterface, setPropertyValue, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface tv.amwa.maj.iface.AAFFileDescriptor
getCodecDefinition, getContainerFormat, getLength, getLinkedSlotID, getSampleRate, setCodecDefinition, setContainerFormat, setLength, setLinkedSlotID, setSampleRate
 
Methods inherited from interface tv.amwa.maj.iface.EssenceDescriptor
appendLocator, appendSubDescriptor, countLocators, countSubDescriptors, getLocatorAt, getLocators, getSubDescriptorAt, getSubDescriptors, insertLocatorAt, insertSubDescriptorAt, prependLocator, prependSubDescriptor, removeLocatorAt, removeSubDescriptorAt
 
Methods inherited from interface tv.amwa.maj.iface.InterchangeObject
countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, setPropertyValue
 
Methods inherited from interface tv.amwa.maj.entity.MAJCommon
toString
 

Field Detail

TIFFDESCRIPTOR_TAG

public static final String TIFFDESCRIPTOR_TAG
See Also:
Constant Field Values
Constructor Detail

TIFFDescriptor

public TIFFDescriptor(ContainerDefinition containerFormat,
                      @Bool
                      boolean isUniform,
                      @Bool
                      boolean isContiguous,
                      @DataValue
                      byte[] summary)
               throws NullPointerException

Creates and initializes a new TIFF descritpor, which specifies that a file source mob is associated with video essence formatted according to the TIFF specification.

Parameters:
containerFormat - Container format of the TIFF data.
isUniform - Does the data have the same number of rows per strip throughout?
isContiguous - Is the data stored in contiguous bytes?
summary - A copy of the TIFF IFD, without the sample data.
Throws:
NullPointerException - The container format and/or summary arguments are null and both are required.
Method Detail

setPropertiesFromInterface

public final void setPropertiesFromInterface(TIFFDescriptor castFrom)
See Also:
InterchangeObject.setPropertiesFromInterface(tv.amwa.maj.iface.InterchangeObject)

getIsContiguous

@AAFProperty(uuid1=101188097,
             uuid2=0,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,1},
             definedName="IsContiguous",
             typeName="Boolean",
             optional=false,
             uniqueIdentifier=false,
             pid=14082)
public boolean getIsContiguous()
Description copied from interface: TIFFDescriptor

Returns true if essence data is stored in contiguous bytes for the TIFF data described by this TIFF descriptor; otherwise false.

Specified by:
getIsContiguous in interface TIFFDescriptor
Returns:
Is the TIFF data represented by the TIFF descriptor stored in contiguous bytes?

setIsContiguous

public void setIsContiguous(boolean isContiguous)
Description copied from interface: TIFFDescriptor

Sets whether essence data is stored in contiguous bytes for the TIFF data described by this TIFF descriptor. Set to true if the data is contiguous; otherwise false.

Specified by:
setIsContiguous in interface TIFFDescriptor
Parameters:
isContiguous - Is the TIFF data represented by the TIFF descriptor stored in contiguous bytes?

getIsUniform

@AAFProperty(uuid1=84017411,
             uuid2=257,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,2},
             definedName="IsUniform",
             typeName="Boolean",
             optional=false,
             uniqueIdentifier=false,
             pid=14081)
public boolean getIsUniform()
Description copied from interface: TIFFDescriptor

Returns true if the TIFF data described by this TIFF descriptor has the same number of rows per strip throughout; otherwise false.

Specified by:
getIsUniform in interface TIFFDescriptor
Returns:
Does the TIFF data represented by the TIFF descriptor have the same number of rows per strip throughout?

setIsUniform

public void setIsUniform(boolean isUniform)
Description copied from interface: TIFFDescriptor

Sets whether the TIFF data described by this TIFF descriptor has the same number of rows per strip throughout. Set to true if it does; otherwise false.

Specified by:
setIsUniform in interface TIFFDescriptor
Parameters:
isUniform - Does the TIFF data described by this TIFF descriptor have the same number of rows per strip throughout?

getJPEGTableID

@AAFProperty(uuid1=84017411,
             uuid2=258,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,2},
             definedName="JPEGTableID",
             typeName="JPEGTableIDType",
             optional=true,
             uniqueIdentifier=false,
             pid=14085)
public int getJPEGTableID()
                   throws PropertyNotPresentException
Description copied from interface: TIFFDescriptor

Returns the JPEG table code property of this TIFF descriptor, which specifies the registered JPEG table code. This is an optional property that, when omitted, indicate that the described image data uses a table that is not registered.

Specified by:
getJPEGTableID in interface TIFFDescriptor
Returns:
JPEG table code property of this TIFF descriptor.
Throws:
PropertyNotPresentException - The optional JPEG table id property is not present in this TIFF descriptor.

setJPEGTableID

public void setJPEGTableID(Integer jpegTableID)
Description copied from interface: TIFFDescriptor

Sets the JPEG table code property of this TIFF descriptor, which specifies the registered JPEG table code. Set this optional property to null to omit it and indicate that the described image data uses a table that is not registered.

Specified by:
setJPEGTableID in interface TIFFDescriptor
Parameters:
jpegTableID - JPEG table code property of tis TIFF descriptor.

getLeadingLines

@AAFProperty(uuid1=67175170,
             uuid2=768,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,1},
             definedName="LeadingLines",
             typeName="Int32",
             optional=true,
             uniqueIdentifier=false,
             pid=14083)
public int getLeadingLines()
Description copied from interface: TIFFDescriptor

Returns the number of leading lines of the TIFF descriptor, which specifies the number of leading lines to be thrown away when viewing the TIFF data.

If this optional property is omitted, its default value of 0 will be returned.

Specified by:
getLeadingLines in interface TIFFDescriptor
Returns:
Number of leading lines of the TIFF descriptor.
See Also:
TIFFDescriptor.LEADINGLINES_DEFAULT, TIFFDescriptor.getTrailingLines()

setLeadingLines

public void setLeadingLines(Integer leadingLines)
Description copied from interface: TIFFDescriptor

Sets the number of leading lines of this TIFF descriptor, which specifies the number of leading lines to be thrown away when viewing the TIFF data.

The optional property has a default value of 0. Set this optional property to null to omit it.

Specified by:
setLeadingLines in interface TIFFDescriptor
Parameters:
leadingLines - Number of leading lines of this TIFF descriptor.
See Also:
TIFFDescriptor.LEADINGLINES_DEFAULT, TIFFDescriptor.setTrailingLines(Integer)

getSummary

@AAFProperty(uuid1=50529026,
             uuid2=768,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,2},
             definedName="Summary",
             typeName="DataValue",
             optional=false,
             uniqueIdentifier=false,
             pid=14086)
public byte[] getSummary()
Description copied from interface: TIFFDescriptor

Returns the copy of the TIFF IFD file information of this TIFF descriptor, without the sample data.

Specified by:
getSummary in interface TIFFDescriptor
Returns:
Copy of the TIFF IFD file information of the TIFF descriptor.

setSummary

public void setSummary(byte[] summary)
                throws NullPointerException
Description copied from interface: TIFFDescriptor

Sets the copy of the TIFF IFD file information of this TIFF descriptor, without the sample data.

Specified by:
setSummary in interface TIFFDescriptor
Parameters:
summary - Sets the TIFF IFD file information of this TIFF descriptor.
Throws:
NullPointerException - The given TIFF IFD data is null.

getSummaryBufferSize

public int getSummaryBufferSize()
Description copied from interface: TIFFDescriptor

Returns the size of the buffer required by the TIFFDescriptor.getSummary() method.

Specified by:
getSummaryBufferSize in interface TIFFDescriptor
Returns:
Size of the buffer required by the TIFFDescriptor.getSummary() method.

getTrailingLines

@AAFProperty(uuid1=67175170,
             uuid2=1024,
             uuid3=0,
             uuid4={6,14,43,52,1,1,1,1},
             definedName="TrailingLines",
             typeName="Int32",
             optional=true,
             uniqueIdentifier=false,
             pid=14084)
public int getTrailingLines()
Description copied from interface: TIFFDescriptor

Returns the number of trailing lines of this TIFF descriptor, which specifies the number of trailing lines to be thrown away when viewing the TIFF data.

If this optional property is omitted, its default value of 0 will be returned.

Specified by:
getTrailingLines in interface TIFFDescriptor
Returns:
Trailing lines of this TIFF descriptor.
See Also:
TIFFDescriptor.TRAILINGLINES_DEFAULT, TIFFDescriptor.getTrailingLines()

setTrailingLines

public void setTrailingLines(Integer trailingLines)
Description copied from interface: TIFFDescriptor

Sets the number of trailing lines of this TIFF descriptor, which specifies the number of trailing lines to be thrown away when viewing the TIFF data.

This optional property has a default value of 0. Set this optional property to null to omit it.

Specified by:
setTrailingLines in interface TIFFDescriptor
Parameters:
trailingLines - Trailing lines of this TIFF descriptor.
See Also:
TIFFDescriptor.TRAILINGLINES_DEFAULT, TIFFDescriptor.setLeadingLines(Integer)

equals

public boolean equals(Object o)
Description copied from interface: MAJCommon

Tests to see if the given object is equal to this interchange object. To be equal, the given value must be not null, share the same interface to its value and each of the properties of the value must each be equal.

Specified by:
equals in interface MAJCommon
Overrides:
equals in class AAFFileDescriptor
Parameters:
o - Object to test for equality with.
Returns:
Is the given object equals to this value?
See Also:
Object.equals(Object)

hashCode

public int hashCode()
Description copied from interface: MAJCommon

Returns a hash code value for this interchange object.

Specified by:
hashCode in interface MAJCommon
Overrides:
hashCode in class AAFFileDescriptor
Returns:
Hash code value for this interchange object.
See Also:
Object.hashCode()

clone

public TIFFDescriptor clone()
Description copied from interface: MAJCommon

Creates a cloned copy of this entity. The clone will be initialized to have the same value as this value but exists independently from then on. Changes to this value will not effect the clone and changes to the clone will not effect this. MAJ API clones are true deep clones with no shared references to areas of memory within the original.

This method does not throw a CloneNotSupportedException as all entity values must implement the Cloneable interface. If a cloning error does occur, a null value will be returned but this is very unlikely to happen.

Specified by:
clone in interface MAJCommon
Overrides:
clone in class EssenceDescriptor
Returns:
Independent clone of this value, which is a deep copy.
See Also:
Object.clone()

appendXMLChildren

public void appendXMLChildren(Node parent)
Description copied from interface: XMLSerializable

Append child elements to the given parent node to serialize the value of an object to an XML fragment. Methods of the XMLBuilder class are provided to help with this process.

Specified by:
appendXMLChildren in interface XMLSerializable
Overrides:
appendXMLChildren in class AAFFileDescriptor
Parameters:
parent - XML parent element to append child nodes to.

Media Authoring
with Java API

(c) 2007-2008 Richard Cartwright, all rights reserved. Subject to the terms of the AAF SDK Public Source License.