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

tv.amwa.maj.model

## Interface CommentMarker

- All Superinterfaces:
    Component, Event, InterchangeObject, MediaEntity, MetadataObject, Segment
  All Known Subinterfaces:
    DescriptiveMarker
  All Known Implementing Classes:
    CommentMarkerImpl, DescriptiveMarkerImpl

      public interface CommentMarker
      extends Event

  Specifies a user comment associated with a point in time. A comment marker may have a source reference that specifies a text or audio annotation.

  See Also:
    `DescriptiveMarker`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `CommentMarker` | `clone()` Create a cloned copy of this comment marker.
    `SourceReferenceSegment` | `getAnnotationSource()` Returns the annotation for this comment marker, which specifies a text or audio annotation.
    `void` | `setAnnotation(SourceReferenceSegment annotation)` Sets the annotation marker for this comment marker, which specifies a text or audio annotation.

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

      `getEventComment, getEventPosition, setEventComment, setEventPosition`

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

      `generateSequence, segmentOffsetToTC, segmentTCToOffset`

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

      `appendComponentAttribute, appendComponentAttribute, appendComponentKLVData, appendComponentUserComment, appendComponentUserComment, clearComponentAttributes, clearComponentKLVData, clearComponentUserComments, countComponentAttributes, countComponentKLVData, countComponentUserComments, getComponentAttributes, getComponentDataDefinition, getComponentKLVData, getComponentLength, getComponentUserComments, getLengthPresent, removeComponentAttribute, removeComponentKLVData, removeComponentUserComment, setComponentDataDefinition, setComponentLength, setLengthPresent`

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

    - #### getAnnotationSource

          SourceReferenceSegment getAnnotationSource()
                                              throws PropertyNotPresentException

      Returns the annotation for this comment marker, which specifies a text or audio annotation. This is an optional property.

      Returns:
        Text or audio annotation.
      Throws:
        `PropertyNotPresentException` - The optional annotation property is not present in this comment marker.
      See Also:
        `TypeDefinitions.SourceReferenceStrongReference`

    - #### setAnnotation

          void setAnnotation(SourceReferenceSegment annotation)

      Sets the annotation marker for this comment marker, which specifies a text or audio annotation. Set this value to `null` to omit this optional property.

      Parameters:
        `annotation` - Specifies a text or audio annotation.

    - #### clone

          CommentMarker clone()

      Create a cloned copy of this comment marker.

      Specified by:
        `clone` in interface `Component`
      Specified by:
        `clone` in interface `Event`
      Specified by:
        `clone` in interface `InterchangeObject`
      Specified by:
        `clone` in interface `MediaEntity`
      Specified by:
        `clone` in interface `Segment`
      Returns:
        Cloned copy of this comment marker.

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