Dictionary (Media Authoring with Java API)
Date: 2016-02-05

tv.amwa.maj.model

## Interface Dictionary

- All Superinterfaces:
    InterchangeObject, MediaEntity, MetadataObject
  All Known Implementing Classes:
    DictionaryImpl

      public interface Dictionary
      extends InterchangeObject

  Specifies a container for definitions. Every AAF file has a dictionary within its preface and contains a representation of the meta dictionary.

  See Also:
    `MetaDictionary`, `DefinitionObject`, `MetaDefinition`, `Preface.getDictionaries()`, `TypeDefinitions.DictionaryStrongReference`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `addDefinition(DefinitionObject definition)` Add the given definition to this dictionary if it is not already contained.
    `boolean` | `addDefinitions(MetadataObject metadataObject)` Scan the given metadata object to see if it contains and references to definitions not known in this dictionary, adding any missing definitions to this dictionary as it goes.
    `Dictionary` | `clone()` Create a cloned copy of this dictionary.
    `int` | `countCodecDefinitions()` Returns the number of codec definitions contained in this dictionary.
    `int` | `countContainerDefinitions()` Returns the number of container definitions contained in this dictionary.
    `int` | `countDataDefinitions()` Returns the number of data definitions contained in this dictionary.
    `int` | `countInterpolationDefinitions()` Returns the number of interpolation definitions contained in this dictionary.
    `int` | `countKLVDataDefinitions()` Returns the number of KLV data definitions contained in this dictionary.
    `int` | `countOperationDefinitions()` Returns the number of operation definitions contained in this dictionary.
    `int` | `countParameterDefinitions()` Returns the number of parameter definitions contained in this dictionary.
    `int` | `countPluginDefinitions()` Returns the number of plugin definitions contained in this dictionary.
    `int` | `countTaggedValueDefinitions()` Returns the number of tagged value definitions contained in this dictionary.
    `Set<? extends CodecDefinition>` | `getCodecDefinitions()` Returns a set of all the codec definitions contained in the dictionary.
    `Set<? extends ContainerDefinition>` | `getContainerDefinitions()` Returns the set of all container definitions contained in this dictionary.
    `Set<? extends DataDefinition>` | `getDataDefinitions()` Returns the set of data definitions contained in this dictionary.
    `Set<? extends InterpolationDefinition>` | `getInterpolationDefinitions()` Returns the set of interpolation definitions contained in this dictionary.
    `Set<? extends KLVDataDefinition>` | `getKLVDataDefinitions()` Returns the set of KLV data definitions contained in this dictionary.
    `Set<? extends OperationDefinition>` | `getOperationDefinitions()` Returns the set of operation definitions contained in this dictionary.
    `Set<? extends ParameterDefinition>` | `getParameterDefinitions()` Returns the set of parameter definitions contained in this dictionary.
    `Set<? extends PluginDefinition>` | `getPluginDefinitions()` Returns the set of plugin definitions contained in this dictionary.
    `Set<? extends TaggedValueDefinition>` | `getTaggedValueDefinitions()` Returns a set of all tagged value definitions contained in this dictionary.
    `DataDefinition` | `lookupAuxiliaryDataDefinition()` Returns the auxiliary data definition.
    `CodecDefinition` | `lookupCodecDefinition(AUID codecId)` Returns the codec definition with the given identifier that is contained in this dictionary.
    `ContainerDefinition` | `lookupContainerDefinition(AUID containerId)` Returns the container definition with the given identifier that is contained in this dictionary.
    `DataDefinition` | `lookupDataDefinition(AUID dataDefinitionId)` Return the data definition with the given identifier that is contained in this dictionary.
    `DataDefinition` | `lookupDescriptiveMedadataDataDefinition()` Returns the descriptive metadata data definition.
    `DataDefinition` | `lookupEdgecodeDataDefinition()` Returns the edgecode data definition.
    `InterpolationDefinition` | `lookupInterpoliationDefinition(AUID interpolationId)` Returns the interpolation definition with the given identifier that is contained in this dictionary.
    `KLVDataDefinition` | `lookupKLVDataDefinition(AUID klvDataDefinitionId)` Returns the KLV data definition with the given identifier that is contained in this dictionary
    `DataDefinition` | `lookupLegacyPictureDataDefinition()` Deprecated. As of AAF v1.1, the legacy picture data definition is deprecated. Use the picture data definition, as returned by `lookupPictureDataDefinition()`, instead.
    `DataDefinition` | `lookupLegacySoundDataDefinition()` Deprecated. As of AAF v1.1, the legacy sound data definition is deprecated. Use the sound data definition, as returned by `lookupSoundDataDefinition()`, instead.
    `DataDefinition` | `lookupLegacyTimecodeDataDefinition()` Deprecated. As of AAF v1.1, the legacy timecode data definition is deprecated. Use the timecode data definition, as returned by `lookupTimecodeDataDefinition()`, instead.
    `DataDefinition` | `lookupMatteDataDefinition()` Returns the matte data definition.
    `OperationDefinition` | `lookupOperationDefinition(AUID operationId)` Return the operation definition with the given identifier that is contained in this dictionary.
    `ParameterDefinition` | `lookupParameterDefinition(AUID parameterId)` Returns the parameter definition with the given identifier that is contained in this dictionary.
    `DataDefinition` | `lookupPictureDataDefinition()` Returns the picture data definition.
    `DataDefinition` | `lookupPictureWithMatteDataDefinition()` Returns the picture with matte data definition.
    `PluginDefinition` | `lookupPluginDefinition(AUID pluginId)` Return the plugin definition with the given identifier that is contained in this dictionary.
    `DataDefinition` | `lookupSoundDataDefinition()` Returns a sound data definition.
    `TaggedValueDefinition` | `lookupTaggedValueDefinition(AUID taggedValueDefinitionId)` Returns the tagged value definition with the given identifier that is contained in this dictionary.
    `DataDefinition` | `lookupTimecodeDataDefinition()` Returns the timecode data definition.
    `void` | `registerCodecDefinition(CodecDefinition codecDefinition)` Add a codec definition to those contained in this dictionary.
    `void` | `registerContainerDefinition(ContainerDefinition containerDefinition)` Add a container definition to those contained in this dictionary.
    `void` | `registerDataDefinition(DataDefinition dataDefinition)` Add a data definition to the those contained in this dictionary.
    `void` | `registerInterpolationDefinition(InterpolationDefinition interpolationDefinition)` Add an interpolation definition to those contained in this dictionary.
    `void` | `registerKLVDataDefinition(KLVDataDefinition klvDataDefinition)` Add a KLV data definition to those contained in the dictionary.
    `void` | `registerOperationDefinition(OperationDefinition operationDefinition)` Add a operation definition to those contained in the dictionary.
    `void` | `registerParameterDefinition(ParameterDefinition parameterDefinition)` Add a parameter definition to those contained in the dictionary.
    `void` | `registerPluginDefinition(PluginDefinition pluginDefinition)` Add a plugin definition to those contained in this dictionary.
    `void` | `registerTaggedValueDefinition(TaggedValueDefinition taggedValueDefinition)` Add the tagged value definition to those contained in this dictionary.

    - ### Methods inherited from interface tv.amwa.maj.model.InterchangeObject

      `addApplicationPlugin, clearApplicationPlugins, containsApplicationPlugin, containsApplicationPlugin, countApplicationPlugins, deepEquals, disableGenerationTracking, enableGenerationTracking, equals, getApplicationPlugins, getGeneration, getLinkedGenerationID, getObjectClass, isGenerationTracked, removeApplicationPlugin, removeApplicationPlugin, setLinkedGenerationID, setObjectClass, toString`

    - ### Methods inherited from interface tv.amwa.maj.industry.MediaEntity

      `getPersistentID, setPersistentIndex`

- - ### Method Detail

    - #### registerDataDefinition

          void registerDataDefinition(DataDefinition dataDefinition)
                               throws NullPointerException,
                                      InvalidParameterException

      Add a data definition to the those contained in this dictionary.

      Parameters:
        `dataDefinition` - Data definition to add.
      Throws:
        `NullPointerException` - The given data definition is `null`.
        `InvalidParameterException` - A data definition with the same identifier is already contained in this dictionary.
      See Also:
        `DataDefinitionConstant`, `Warehouse.lookup(Class, String)`

    - #### lookupDataDefinition

          DataDefinition lookupDataDefinition(AUID dataDefinitionId)
                                       throws NullPointerException,
                                              InvalidParameterException

      Return the data definition with the given identifier that is contained in this dictionary.

      Parameters:
        `dataDefinitionId` - Unique identifier for a data definition contained in this dictionary.
      Returns:
        Data definition contained in this dictionary with the given identifier.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - A data definition with the given id could not be found in this dictionary.
      See Also:
        `TypeDefinitions.DataDefinitionWeakReference`

    - #### getDataDefinitions

          Set<? extends DataDefinition> getDataDefinitions()
                                                    throws PropertyNotPresentException

      Returns the set of data definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of data definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No data definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.DataDefinitionStrongReferenceSet`

    - #### countDataDefinitions

          @UInt32
          int countDataDefinitions()

      Returns the number of data definitions contained in this dictionary.

      Returns:
        Number of data definitions contained in this dictionary.

    - #### registerOperationDefinition

          void registerOperationDefinition(OperationDefinition operationDefinition)
                                    throws NullPointerException,
                                           InvalidParameterException

      Add a operation definition to those contained in the dictionary.

      Parameters:
        `operationDefinition` - Operation definition to add.
      Throws:
        `NullPointerException` - The given operation definition is `null`.
        `InvalidParameterException` - An operation definition with the same identifier is already contained in this dictionary.
      See Also:
        `OperationConstant`

    - #### lookupOperationDefinition

          OperationDefinition lookupOperationDefinition(AUID operationId)
                                                 throws NullPointerException,
                                                        InvalidParameterException

      Return the operation definition with the given identifier that is contained in this dictionary.

      Parameters:
        `operationId` - Identifier of an operation definition contained in this dictionary.
      Returns:
        Operation definition with the given id contained in this dictionary.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match that of an operation definition contained in this dictionary.
      See Also:
        `TypeDefinitions.OperationDefinitionWeakReference`

    - #### getOperationDefinitions

          Set<? extends OperationDefinition> getOperationDefinitions()
                                                              throws PropertyNotPresentException

      Returns the set of operation definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of operation definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No operation definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.OperationDefinitionStrongReferenceSet`

    - #### countOperationDefinitions

          @UInt32
          int countOperationDefinitions()

      Returns the number of operation definitions contained in this dictionary.

      Returns:
        Number of operation definitions contained in this dictionary.

    - #### registerParameterDefinition

          void registerParameterDefinition(ParameterDefinition parameterDefinition)
                                    throws NullPointerException,
                                           InvalidParameterException

      Add a parameter definition to those contained in the dictionary.

      Parameters:
        `parameterDefinition` - Parameter definition to add.
      Throws:
        `NullPointerException` - The given parameter definition is `null`.
        `InvalidParameterException` - A parameter definition with the same identifier is already contained in this dictionary.
      See Also:
        `ParameterConstant`

    - #### lookupParameterDefinition

          ParameterDefinition lookupParameterDefinition(AUID parameterId)
                                                 throws NullPointerException,
                                                        InvalidParameterException

      Returns the parameter definition with the given identifier that is contained in this dictionary.

      Parameters:
        `parameterId` - Identifier for a parameter definition contained in this dictionary.
      Returns:
        Parameter definition with the given identifier contained in this dictionary.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match a parameter definition contained in this dictionary.
      See Also:
        `TypeDefinitions.ParameterDefinitionWeakReference`

    - #### getParameterDefinitions

          Set<? extends ParameterDefinition> getParameterDefinitions()
                                                              throws PropertyNotPresentException

      Returns the set of parameter definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of parameter definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No parameter definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.ParameterDefinitionStrongReferenceSet`

    - #### countParameterDefinitions

          @UInt32
          int countParameterDefinitions()

      Returns the number of parameter definitions contained in this dictionary.

      Returns:
        Number of parameter definitions contained in this dictionary.

    - #### registerCodecDefinition

          void registerCodecDefinition(CodecDefinition codecDefinition)
                                throws NullPointerException,
                                       InvalidParameterException

      Add a codec definition to those contained in this dictionary.

      Parameters:
        `codecDefinition` - Codec definition to add.
      Throws:
        `NullPointerException` - The given codec definition is `null`.
        `InvalidParameterException` - A codec definition with the same identifier is already contained in this dictionary.
      See Also:
        `CodecConstant`

    - #### lookupCodecDefinition

          CodecDefinition lookupCodecDefinition(AUID codecId)
                                         throws NullPointerException,
                                                InvalidParameterException

      Returns the codec definition with the given identifier that is contained in this dictionary.

      Parameters:
        `codecId` - Identifier for a codec definition contained in this dictionary.
      Returns:
        Codec definition with the given identifier contained in this dictionary.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match a codec definition contained in this dictionary.
      See Also:
        `TypeDefinitions.CodecDefinitionWeakReference`

    - #### getCodecDefinitions

          Set<? extends CodecDefinition> getCodecDefinitions()
                                                      throws PropertyNotPresentException

      Returns a set of all the codec definitions contained in the dictionary.

      Returns:
        Shallow copy of the set of codec definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No codec definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.CodecDefinitionStrongReferenceSet`

    - #### countCodecDefinitions

          @UInt32
          int countCodecDefinitions()

      Returns the number of codec definitions contained in this dictionary.

      Returns:
        Number of codec definitions contained in this dictionary.

    - #### registerContainerDefinition

          void registerContainerDefinition(ContainerDefinition containerDefinition)
                                    throws NullPointerException,
                                           InvalidParameterException

      Add a container definition to those contained in this dictionary.

      Parameters:
        `containerDefinition` - Container definition to add.
      Throws:
        `NullPointerException` - The given container definition is `null`.
        `InvalidParameterException` - A container definition with the same identifier is already contained in this dictionary.
      See Also:
        `ContainerConstant`

    - #### lookupContainerDefinition

          ContainerDefinition lookupContainerDefinition(AUID containerId)
                                                 throws NullPointerException,
                                                        InvalidParameterException

      Returns the container definition with the given identifier that is contained in this dictionary.

      Parameters:
        `containerId` - Identifier for a container definition contained in this dictionary.
      Returns:
        Container definition contained in this dictionary with the given id.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match a codec definition contained in this dictionary.
      See Also:
        `TypeDefinitions.ContainerDefinitionWeakReference`

    - #### getContainerDefinitions

          Set<? extends ContainerDefinition> getContainerDefinitions()
                                                              throws PropertyNotPresentException

      Returns the set of all container definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of container definitions.
      Throws:
        `PropertyNotPresentException` - No container definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.ContainerDefinitionStrongReferenceSet`

    - #### countContainerDefinitions

          @UInt32
          int countContainerDefinitions()

      Returns the number of container definitions contained in this dictionary.

      Returns:
        Number of container definitions contained in this dictionary.

    - #### registerInterpolationDefinition

          void registerInterpolationDefinition(InterpolationDefinition interpolationDefinition)
                                        throws NullPointerException,
                                               InvalidParameterException

      Add an interpolation definition to those contained in this dictionary.

      Parameters:
        `interpolationDefinition` - Interpolation definition to add.
      Throws:
        `NullPointerException` - The given interpolation definition is `null`.
        `InvalidParameterException` - An interpolation definition with the same identifier is already contained in this dictionary.
      See Also:
        `InterpolationConstant`

    - #### lookupInterpoliationDefinition

          InterpolationDefinition lookupInterpoliationDefinition(AUID interpolationId)
                                                          throws NullPointerException,
                                                                 InvalidParameterException

      Returns the interpolation definition with the given identifier that is contained in this dictionary.

      Parameters:
        `interpolationId` - Identifier for an interpolation definition contained in this dictionary.
      Returns:
        Interpolation definition with the given identifier contained in this dictionary.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match that of an interpolation definition contained in this dictionary.
      See Also:
        `TypeDefinitions.InterpolationDefinitionWeakReference`

    - #### getInterpolationDefinitions

          Set<? extends InterpolationDefinition> getInterpolationDefinitions()
                                                                      throws PropertyNotPresentException

      Returns the set of interpolation definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of interpolation definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No interpolation definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.InterpolationDefinitionStrongReferenceSet`

    - #### countInterpolationDefinitions

          @UInt32
          int countInterpolationDefinitions()

      Returns the number of interpolation definitions contained in this dictionary.

      Returns:
        Number of interpolation definitions contained in this dictionary.

    - #### registerPluginDefinition

          void registerPluginDefinition(PluginDefinition pluginDefinition)
                                 throws NullPointerException,
                                        InvalidParameterException

      Add a plugin definition to those contained in this dictionary.

      Parameters:
        `pluginDefinition` - Plugin definition to add.
      Throws:
        `NullPointerException` - The given plugin definition is `null`.
        `InvalidParameterException` - A plugin definition with the same identifier is already contained in this dictionary.

    - #### lookupPluginDefinition

          PluginDefinition lookupPluginDefinition(AUID pluginId)
                                           throws NullPointerException,
                                                  InvalidParameterException

      Return the plugin definition with the given identifier that is contained in this dictionary.

      Parameters:
        `pluginId` - Identifier for a plugin definition contained in this dictionary.
      Returns:
        Plugin definition with the given identifier contained in this dictionary.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match that of a plugin definition contained in this dictionary.
      See Also:
        `TypeDefinitions.PluginDefinitionWeakReference`

    - #### getPluginDefinitions

          Set<? extends PluginDefinition> getPluginDefinitions()
                                                        throws PropertyNotPresentException

      Returns the set of plugin definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of plugin definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No plugin definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.PluginDefinitionStrongReferenceSet`

    - #### countPluginDefinitions

          @UInt32
          int countPluginDefinitions()

      Returns the number of plugin definitions contained in this dictionary.

      Returns:
        Number of plugin definitions contained in this dictionary.

    - #### registerKLVDataDefinition

          void registerKLVDataDefinition(KLVDataDefinition klvDataDefinition)
                                  throws NullPointerException,
                                         InvalidParameterException

      Add a KLV data definition to those contained in the dictionary.

      Parameters:
        `klvDataDefinition` - KLV data definition to add to the dictionary.
      Throws:
        `NullPointerException` - The given KLV data definition is `null`.
        `InvalidParameterException` - The given KLV data definition has the same identifier as one already contained in the dictionary.

    - #### lookupKLVDataDefinition

          KLVDataDefinition lookupKLVDataDefinition(AUID klvDataDefinitionId)
                                             throws NullPointerException,
                                                    InvalidParameterException

      Returns the KLV data definition with the given identifier that is contained in this dictionary

      Parameters:
        `klvDataDefinitionId` - Identifier for a KLV data definition contained in this dictionary.
      Returns:
        KLV data definition with the given identifier contained in this dictionary.
      Throws:
        `NullPointerException` - The given KLV data definition is `null`.
        `InvalidParameterException` - The given id does not match that of a KLV data definition in the dictionary.

    - #### getKLVDataDefinitions

          Set<? extends KLVDataDefinition> getKLVDataDefinitions()
                                                          throws PropertyNotPresentException

      Returns the set of KLV data definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set of KLV data definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No KLV data definitions are present in this dictionary.
      See Also:
        `TypeDefinitions.KLVDataDefinitionStrongReferenceSet`

    - #### countKLVDataDefinitions

          @UInt32
          int countKLVDataDefinitions()

      Returns the number of KLV data definitions contained in this dictionary.

      Returns:
        Number of KLV data definitions contained in this dictionary.

    - #### registerTaggedValueDefinition

          void registerTaggedValueDefinition(TaggedValueDefinition taggedValueDefinition)
                                      throws NullPointerException,
                                             InvalidParameterException

      Add the tagged value definition to those contained in this dictionary.

      Parameters:
        `taggedValueDefinition` - Tagged value definition to add to the dictionary.
      Throws:
        `NullPointerException` - The given tagged value definition is `null`.
        `InvalidParameterException` - The given tagged value definition has the same identifier as one already contained in the dictionary.

    - #### lookupTaggedValueDefinition

          TaggedValueDefinition lookupTaggedValueDefinition(AUID taggedValueDefinitionId)
                                                     throws NullPointerException,
                                                            InvalidParameterException

      Returns the tagged value definition with the given identifier that is contained in this dictionary.

      Parameters:
        `taggedValueDefinitionId` - ID of the tagged value definition to lookup in the dictionary.
      Returns:
        Matching tagged value definition in the dictionary.
      Throws:
        `NullPointerException` - The given identifier is `null`.
        `InvalidParameterException` - The given identifier does not match that of a tagged value definition contained in this dictionary.

    - #### getTaggedValueDefinitions

          Set<? extends TaggedValueDefinition> getTaggedValueDefinitions()
                                                                  throws PropertyNotPresentException

      Returns a set of all tagged value definitions contained in this dictionary. This is an optional property.

      Returns:
        Shallow copy of the set the tagged value definitions contained in this dictionary.
      Throws:
        `PropertyNotPresentException` - No tagged value definitions are present in this dictionary.

    - #### countTaggedValueDefinitions

          @UInt32
          int countTaggedValueDefinitions()

      Returns the number of tagged value definitions contained in this dictionary.
      Returns:
        Number of tagged value definitions contained in the dictionary.

    - #### lookupAuxiliaryDataDefinition

          DataDefinition lookupAuxiliaryDataDefinition()

      Returns the auxiliary data definition. This is a built-in data definition for auxiliary data.

      Returns:
        Auxiliary data definition.
      See Also:
        `DataDefinitionConstant.Auxiliary`

    - #### lookupDescriptiveMedadataDataDefinition

          DataDefinition lookupDescriptiveMedadataDataDefinition()

      Returns the descriptive metadata data definition. This is a built-in data definition for descriptive metadata.

      Returns:
        Descriptive metadata data definition.
      See Also:
        `DataDefinitionConstant.DescriptiveMetadata`

    - #### lookupEdgecodeDataDefinition

          DataDefinition lookupEdgecodeDataDefinition()

      Returns the edgecode data definition. This is a built-in data definition for a stream of film edge code values.

      Returns:
        Edgecode data definition.
      See Also:
        `DataDefinitionConstant.Edgecode`

    - #### lookupLegacyPictureDataDefinition

          @Deprecated
          DataDefinition lookupLegacyPictureDataDefinition()

      Deprecated. As of AAF v1.1, the legacy picture data definition is deprecated. Use the picture data definition, as returned by `lookupPictureDataDefinition()`, instead.

      Returns the legacy picture data definition. This is a built-in data definition for a stream of essence that contains image data.

      Returns:
        Legacy picture data definition.
      See Also:
        `DataDefinitionConstant.LegacyPicture`

    - #### lookupLegacySoundDataDefinition

          @Deprecated
          DataDefinition lookupLegacySoundDataDefinition()

      Deprecated. As of AAF v1.1, the legacy sound data definition is deprecated. Use the sound data definition, as returned by `lookupSoundDataDefinition()`, instead.

      Returns the legacy sound data definition. This is a built-in data definition essence that contains a single channel of sound.

      Returns:
        Legacy sound data definition.
      See Also:
        `DataDefinitionConstant.LegacySound`

    - #### lookupLegacyTimecodeDataDefinition

          @Deprecated
          DataDefinition lookupLegacyTimecodeDataDefinition()

      Deprecated. As of AAF v1.1, the legacy timecode data definition is deprecated. Use the timecode data definition, as returned by `lookupTimecodeDataDefinition()`, instead.

      Returns the legacy timecode data definition. This is a built-in data definition for a stream of tape timecode values.

      Returns:
        Legacy timecode data definition.
      See Also:
        `DataDefinitionConstant.LegacyTimecode`

    - #### lookupMatteDataDefinition

          DataDefinition lookupMatteDataDefinition()

      Returns the matte data definition. This is a built-in data definition for a stream of essence that contains alpha values.

      Returns:
        Matte data definition.
      See Also:
        `DataDefinitionConstant.Matte`

    - #### lookupPictureDataDefinition

          DataDefinition lookupPictureDataDefinition()

      Returns the picture data definition. This is a built-in data definition for a stream of essence that contains image data.

      Returns:
        Picture data definition.
      See Also:
        `DataDefinitionConstant.Picture`

    - #### lookupPictureWithMatteDataDefinition

          DataDefinition lookupPictureWithMatteDataDefinition()

      Returns the picture with matte data definition. This is a built-in data definition for a stream of essence that contains image data and a matte.

      Returns:
        Picture with matte data definition.
      See Also:
        `DataDefinitionConstant.PictureWithMatte`

    - #### lookupSoundDataDefinition

          DataDefinition lookupSoundDataDefinition()

      Returns a sound data definition. This is a built-in data definition for a a stream of essence that contains a single channel of sound.

      Returns:
        Sound data definition.
      See Also:
        `DataDefinitionConstant.Sound`

    - #### lookupTimecodeDataDefinition

          DataDefinition lookupTimecodeDataDefinition()

      Returns the timecode data definition. This is a built-in `data definition` for a stream of tape timecode values.

      Returns:
        Timecode data definition.
      See Also:
        `DataDefinitionConstant.Timecode`

    - #### addDefinitions

          boolean addDefinitions(MetadataObject metadataObject)

      Scan the given metadata object to see if it contains and references to definitions not known in this dictionary, adding any missing definitions to this dictionary as it goes.

      Parameters:
        `metadataObject` - Metadata object to check for missing definitions.
      Returns:
        Are all definitions referenced by the given metadata object now in registered in this dictionary?

    - #### addDefinition

          boolean addDefinition(DefinitionObject definition)

      Add the given definition to this dictionary if it is not already contained. If the definition is already represented, this methods returns successfully.

      Parameters:
        `definition` - Definition to add to this dictionary.
      Returns:
        Has the given definition been added to this dictionary successfully.

    - #### clone

          Dictionary clone()

      Create a cloned copy of this dictionary.

      Specified by:
        `clone` in interface `InterchangeObject`
      Specified by:
        `clone` in interface `MediaEntity`
      Returns:
        Cloned copy of this dictionary.

(c)2007-2016 Richard Cartwright, all rights reserved. Licensed under Apache 2 license and subject to the AMWA IPR policy.