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

tv.amwa.maj.model

## Interface FilmDescriptor

- All Superinterfaces:
    EssenceDescriptor, InterchangeObject, MediaEntity, MetadataObject
  All Known Implementing Classes:
    FilmDescriptorImpl

      public interface FilmDescriptor
      extends EssenceDescriptor

  Specifies the description of film media. A SourcePackage described by a film descriptor is known as a film source package.

  See Also:
    `SourcePackage.getEssenceDescriptor()`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `FilmDescriptor` | `clone()` Create a cloned copy of this film descriptor.
    `Rational` | `getFilmAspectRatio()` Returns the image aspect ratio of the described film, which specifies the ratio between the horizontal size of the frame image and the vertical size of the frame image.
    `String` | `getFilmBatchNumber()` Returns the film batch number for this film descriptor.
    `FilmType` | `getFilmFormat()` Returns the film format of the described film, according to its film type.
    `String` | `getFilmFormatName()` Returns the film gauge format of the described film.
    `String` | `getFilmStockKind()` Returns the kind of film stock of the described film, which is a string to display to end users indicating the manufacturer's brand designation for the film, such as "5247".
    `String` | `getFilmStockManufacturer()` Returns the film stock manufacturer of the described film, which is a string to display to end users indicating the manufacturer of the film stock.
    `int` | `getFrameRate()` Returns the frame rate of the described film, which specifies the frame rate of the film measured in frames per second.
    `byte` | `getPerfortionsPerFrame()` Returns the number of perforations per frame on the film stock of the described film.
    `void` | `setFilmAspectRatio(Rational aspectRatio)` Sets the image aspect ratio of the described film, which specifies the ratio between the horizontal size of the frame image and the vertical size of the frame image.
    `void` | `setFilmBatchNumber(String filmBatchNumber)` Sets the film batch number for the described film.
    `void` | `setFilmFormat(FilmType filmFormat)` Sets the film format of the described film, according to its film type.
    `void` | `setFilmFormatName(String filmFormatName)` Sets the film gauge format of the described film.
    `void` | `setFilmStockKind(String filmStockKind)` Sets the kind of film stock of the described film, which is a string to display to end users indicating the manufacturer's brand designation for the film, such as "5247".
    `void` | `setFilmStockManufacturer(String filmStockManufacturer)` Sets the film stock manufacturer property of the described film, which is a string to display to end users indicating the manufacturer of the film stock.
    `void` | `setFrameRate(Integer rate)` Set the frame rate of the described film, which specifies the frame rate of the film measured in frames per second.
    `void` | `setPerforationsPerFrame(Byte perforationsPerFrame)` Set the number of perforations per frame on the film stock of the described film.

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

      `appendLocator, appendSubDescriptor, clearLocators, countLocators, countSubDescriptors, getLocatorAt, getLocators, getSubDescriptorAt, getSubDescriptors, insertLocatorAt, insertSubDescriptorAt, prependLocator, prependSubDescriptor, removeLocatorAt, removeSubDescriptorAt`

    - ### 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

    - #### setFilmStockManufacturer

          void setFilmStockManufacturer(@AAFString
                                        String filmStockManufacturer)

      Sets the film stock manufacturer property of the described film, which is a string to display to end users indicating the manufacturer of the film stock. Set this optional property to `null` to omit it.

      Parameters:
        `filmStockManufacturer` - Film manufacturer of the described film.

    - #### getFilmStockManufacturer

          @AAFString
          String getFilmStockManufacturer()
                                              throws PropertyNotPresentException

      Returns the film stock manufacturer of the described film, which is a string to display to end users indicating the manufacturer of the film stock. This is an optional property.

      Returns:
        Film manufacturer of this film descriptor.
      Throws:
        `PropertyNotPresentException` - The optional film manufacturer property is not present for this film descriptor.

    - #### setFilmStockKind

          void setFilmStockKind(@AAFString
                                String filmStockKind)

      Sets the kind of film stock of the described film, which is a string to display to end users indicating the manufacturer's brand designation for the film, such as "5247". Set this optional property to `null` to omit it.

      Parameters:
        `filmStockKind` - Kind of film stock of the described film.

    - #### getFilmStockKind

          @AAFString
          String getFilmStockKind()
                                      throws PropertyNotPresentException

      Returns the kind of film stock of the described film, which is a string to display to end users indicating the manufacturer's brand designation for the film, such as "5247". This is an optional property.

      Returns:
        Kind of film stock of the described film.
      Throws:
        `PropertyNotPresentException` - The optional film model property is not present for this film descriptor.

    - #### setFilmFormat

          void setFilmFormat(FilmType filmFormat)

      Sets the film format of the described film, according to its film type. Set this optional property to `null` to omit it.

      Typical values include:

      - `FilmType.Ft35MM`
      - `FilmType.Ft16MM`
      - `FilmType.Ft65MM`
      Parameters:
        `filmFormat` - Film format of the described film.

    - #### getFilmFormat

          FilmType getFilmFormat()
                          throws PropertyNotPresentException

      Returns the film format of the described film, according to its film type.

      Typical values include:

      - `FilmType.Ft35MM`
      - `FilmType.Ft16MM`
      - `FilmType.Ft65MM`
      Returns:
        Film format of the described film.
      Throws:
        `PropertyNotPresentException` - The optional film format property is not present for this film descriptor.

    - #### setFrameRate

          void setFrameRate(@UInt32
                            Integer rate)
                     throws IllegalArgumentException

      Set the frame rate of the described film, which specifies the frame rate of the film measured in frames per second. Set this optional property to `null` to omit it.

      Parameters:
        `rate` - Frame rate of the described film.
      Throws:
        `IllegalArgumentException` - The given frame rate is negative.

    - #### getFrameRate

          @UInt32
          int getFrameRate()
                            throws PropertyNotPresentException

      Returns the frame rate of the described film, which specifies the frame rate of the film measured in frames per second. This is an optional property.

      Returns:
        Frame rate of the described film.
      Throws:
        `PropertyNotPresentException` - The optional frame rate property is not present for this film descriptor.

    - #### setPerforationsPerFrame

          void setPerforationsPerFrame(@UInt8
                                       Byte perforationsPerFrame)

      Set the number of perforations per frame on the film stock of the described film. Set this optional property to `null` to omit it.

      Parameters:
        `perforationsPerFrame` - Perforations per frame of the described film.

    - #### getPerfortionsPerFrame

          @UInt8
          byte getPerfortionsPerFrame()
                                      throws PropertyNotPresentException

      Returns the number of perforations per frame on the film stock of the described film. This is an optional property.

      Returns:
        Number of perforations per frame of the described film.
      Throws:
        `PropertyNotPresentException` - The optional perforations per frame property is not present for this film descriptor.

    - #### setFilmAspectRatio

          void setFilmAspectRatio(Rational aspectRatio)

      Sets the image aspect ratio of the described film, which specifies the ratio between the horizontal size of the frame image and the vertical size of the frame image. Set this optional property to `null` to omit it.

      Parameters:
        `aspectRatio` - Image aspect ratio of the described film.

    - #### getFilmAspectRatio

          Rational getFilmAspectRatio()
                               throws PropertyNotPresentException

      Returns the image aspect ratio of the described film, which specifies the ratio between the horizontal size of the frame image and the vertical size of the frame image. This is an optional property.

      Returns:
        Image aspect ratio of the described film.
      Throws:
        `PropertyNotPresentException` - The optional image aspect ratio for this film descriptor is not present.

    - #### setFilmFormatName

          void setFilmFormatName(String filmFormatName)

      Sets the film gauge format of the described film. Set this optional property to `null` to omit it.

      Parameters:
        `filmFormatName` - Film gauge format of the described film.

    - #### getFilmFormatName

          String getFilmFormatName()
                            throws PropertyNotPresentException

      Returns the film gauge format of the described film. This is an optional property.

      Returns:
        Film gauge format of the described film.
      Throws:
        `PropertyNotPresentException` - This optional film gauge property is not present for this film descriptor.

    - #### setFilmBatchNumber

          void setFilmBatchNumber(String filmBatchNumber)

      Sets the film batch number for the described film. Set this optional property to `null` to omit it.

      Parameters:
        `filmBatchNumber` - Film batch number of the described film.

    - #### getFilmBatchNumber

          String getFilmBatchNumber()
                             throws PropertyNotPresentException

      Returns the film batch number for this film descriptor. This is an optional property.

      Returns:
        Film batch number for the described film.
      Throws:
        `PropertyNotPresentException` - The optional film batch number is not present for this film descriptor.

    - #### clone

          FilmDescriptor clone()

      Create a cloned copy of this film descriptor.

      Specified by:
        `clone` in interface `EssenceDescriptor`
      Specified by:
        `clone` in interface `InterchangeObject`
      Specified by:
        `clone` in interface `MediaEntity`
      Returns:
        Cloned copy of this film descriptor.

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