@MediaClass(uuid1=218169601, uuid2=257, uuid3=7168, uuid4={6,14,43,52,2,6,1,1}, definedName="OperationDefinition", description="The OperationDefinition class identifies an operation that is performed on an array of Segments.", symbol="OperationDefinition") public class OperationDefinitionImpl extends DefinitionObjectImpl implements OperationDefinition, Serializable, OperationConstant, Cloneable, WeakReferenceTarget
Implements the definition of an operation that is performed on an array of segments. Operation definitions specify which parameters are possible on an operation, while an operation group specifies specific parameters and input segments for a particular operation invocation.
THE COMMENTS FOR THIS CLASS ARE INCOMPLETE.
ObjectClassPropertyIDISTIMEWARP_DEFAULTFlip, FlipFlop, Flop, MonoAudioDissolve, MonoAudioGain, MonoAudioMixdown, MonoAudioPan, PictureWithMate, SMPTEVideoWipe, StereoAudioDissolve, StereoAudioGain, TwoParameterMonoAudioDissolve, Unknown, VideoAlphaWithinVideoKey, VideoChromaKey, VideoCornerPinning, VideoCrop, VideoDissolve, VideoFadeToBlack, VideoFrameToMask, VideoLuminanceKey, VideoPosition, VideoRepeat, VideoRotate, VideoScale, VideoSeparateAlphaKey, VideoSpeedControl| Constructor and Description |
|---|
OperationDefinitionImpl() |
OperationDefinitionImpl(AUID identifier,
String name,
DataDefinition dataDefinition,
int numInputs)
Creates and initializes a new operation definition, which identifies an operation
that is performed on an array of
segments. |
| Modifier and Type | Method and Description |
|---|---|
void |
addParameterDefinition(ParameterDefinition parameterDefinition)
Add a parameter definition to
the unordered collection of parameter definitions of the defined operation,
which specify the parameters that can be used as controls
for the operation.
|
void |
appendDegradeToOperation(OperationDefinition operationDefinition)
Append an operation definition to the degrade-to
list of operation definitions of the defined operation, which specify simpler
operations that an application can substitute for the defined operation if it cannot
process it.
|
void |
clearDegradeToOperations()
Clears the list degrade-to operations of this operation definition, omitting
this optional property.
|
void |
clearOperationParametersDefined() |
OperationDefinition |
clone()
Create a cloned copy of this interchange object.
|
static int |
count() |
int |
countDegradeToOperations()
Returns the number of degrade-to operations in this operation
definition, which specify simpler
operations that an application can substitute for the defined operation if it cannot
process it.
|
int |
countOperationParametersDefined()
Return the number of parameter definitions
of the defined operation, which specify the parameters that
can be used as controls for the operation.
|
static OperationDefinition |
forAUID(AUID identification) |
static OperationDefinition |
forIdentification(AUID identification) |
static OperationDefinition |
forName(String operationName) |
int |
getBypass()
This is a 1-based index.
|
List<OperationDefinition> |
getDegradeToOperations()
Returns the list of degrade-to operation definitions of the defined
operation, which specify simpler
operations that an application can substitute for the defined operation if it cannot
process it.
|
boolean |
getIsTimeWarp()
Returns
true if the length of an operation group
is different from the lengths of the input segments, for example a
slow motion effect. |
AUID |
getOperationCategory()
Returns an AUID identifying the
category of the defined operation, which specifies the kind of operation, such as video effect,
audio effect, or 3D operation.
|
String |
getOperationCategoryString() |
DataDefinition |
getOperationDataDefinition()
Returns the kind of data that is
produced by the defined operation.
|
int |
getOperationInputCount()
Returns the number of input media segments of the defined operation
definition.
|
Set<ParameterDefinition> |
getOperationParametersDefined()
Returns the collection of parameter definitions
of the defined operation, which specify the parameters that
can be used as controls for the operation.
|
static DataDefinition |
initializeOperationDataDefinition() |
static int |
initializeOperationInputCount() |
void |
insertDegradeToOperationAt(int index,
OperationDefinition operationDefinition)
Insert an operation definition into the degrade-to list of
definitions of the defined operation at the given index.
|
static Collection<String> |
inventory() |
boolean |
isTimeWarp()
Returns
true if the length of an operation group
is different from the lengths of the input segments, for example a
slow motion effect. |
ParameterDefinition |
lookupOperationParameter(AUID parameterDefinition)
Looks up and returns the parameter definition
corresponding to the given identifier from the collection of defined parameters
of the defined operation.
|
void |
prependDegradeToOperation(OperationDefinition operationDefinition)
Prepend an operation definition to the degrade-to
list of operation definitions of the defined operation, which specify simpler
operations that an application can substitute for the defined operation if it cannot
process it.
|
static boolean |
registerOperationDefinition(OperationDefinition definedOperation) |
static int |
registerOperationsFromClass(Class<?> classWithOperations) |
void |
removeDegradeToOperationAt(int index)
Removes the indexed operation definition from the degrade-to
list of operation definitions of the defined operation, which specify simpler
operations that an application can substitute for the defined operation if it cannot
process it.
|
void |
setBypass(Integer bypass)
Sets the bypass media segment index, which specifies the array index (1-based)
of the input segment which is the primary input.
|
void |
setIsTimeWarp(Boolean isTimeWarp)
Set to
true to indicate that the the length of an
operation group is different from the lengths of the input segments,
for example a slow motion effect. |
void |
setOperationCategory(AUID operationCategory)
Sets an AUID identifying the
category of the defined operation, which specifies the kind of operation, such as video effect,
audio effect, or 3D operation.
|
void |
setOperationCategoryString(String operationCategory) |
void |
setOperationDataDefinition(DataDefinition operationDdataDefinition)
Sets the kind of data that is
produced by the defined operation.
|
void |
setOperationInputCount(int operationInputCount)
Sets the number of input media segments for the defined operation.
|
getAUID, getDefinitionObjectIdentificationString, getDescription, getLocalizedUID, getName, getWeakTargetReference, initializeDefinitionObjectIdentification, initializeDefinitionObjectName, setAUID, setDefinitionObjectIdentificationString, setDescription, setLocalizedUID, setNameaddApplicationPlugin, appendXMLChildren, clearApplicationPlugins, containsApplicationPlugin, containsApplicationPlugin, countApplicationPlugins, deepEquals, disableGenerationTracking, enableGenerationTracking, equals, getApplicationPlugins, getComment, getGeneration, getLinkedGenerationID, getLinkedGenerationIDString, getObjectClass, getPersistentID, getPersistentIndex, hashCode, isGenerationTracked, removeApplicationPlugin, removeApplicationPlugin, setLinkedGenerationID, setLinkedGenerationIDString, setObjectClass, setPersistentID, setPersistentIndex, toStringgetAUID, getDescription, getName, setDescription, setNameaddApplicationPlugin, clearApplicationPlugins, containsApplicationPlugin, containsApplicationPlugin, countApplicationPlugins, deepEquals, disableGenerationTracking, enableGenerationTracking, equals, getApplicationPlugins, getGeneration, getLinkedGenerationID, getObjectClass, isGenerationTracked, removeApplicationPlugin, removeApplicationPlugin, setLinkedGenerationID, setObjectClass, toStringgetPersistentID, setPersistentIndexgetWeakTargetReferencepublic OperationDefinitionImpl()
public OperationDefinitionImpl(AUID identifier, @AAFString String name, DataDefinition dataDefinition, int numInputs) throws NullPointerException
Creates and initializes a new operation definition, which identifies an operation
that is performed on an array of segments.
identifier - Unique identifier for the operation definition.name - Display name of the operation definition.dataDefinition - The kind of data that is produced by the operation.numInputs - Number of input segments. A value of -1 indicates that the
effect can have any number of input segments.NullPointerException - One or more of the arguments is null and they
are all required properties.public static final int registerOperationsFromClass(Class<?> classWithOperations) throws NullPointerException
NullPointerExceptionpublic static final boolean registerOperationDefinition(OperationDefinition definedOperation) throws NullPointerException
NullPointerExceptionpublic static final OperationDefinition forName(String operationName) throws NullPointerException
NullPointerExceptionpublic static final OperationDefinition forIdentification(AUID identification) throws NullPointerException
NullPointerExceptionpublic static final OperationDefinition forAUID(AUID identification) throws NullPointerException
NullPointerExceptionpublic static final Collection<String> inventory()
public static final int count()
@MediaSetAdd(value="OperationParametersDefined") public void addParameterDefinition(ParameterDefinition parameterDefinition) throws NullPointerException, ObjectAlreadyAttachedException
OperationDefinitionAdd a parameter definition to the unordered collection of parameter definitions of the defined operation, which specify the parameters that can be used as controls for the operation.
addParameterDefinition in interface OperationDefinitionparameterDefinition - Parameter definition object to add.NullPointerException - The given parameter definition is null.ObjectAlreadyAttachedException - Parameter definition is already
present within this operation definition.OperationGroup.addParameter(Parameter)@MediaListAppend(value="DegradeTo") public void appendDegradeToOperation(OperationDefinition operationDefinition) throws NullPointerException
OperationDefinitionAppend an operation definition to the degrade-to list of operation definitions of the defined operation, which specify simpler operations that an application can substitute for the defined operation if it cannot process it. Use this function to add an operation definition to be scanned last when searching for a replacement, to be considered as a less desirable alternate operation.
appendDegradeToOperation in interface OperationDefinitionoperationDefinition - Degrade-to operation to append.NullPointerException - The given degrade-to operation definition is null.@MediaPropertyCount(value="DegradeTo") public int countDegradeToOperations()
OperationDefinitionReturns the number of degrade-to operations in this operation definition, which specify simpler operations that an application can substitute for the defined operation if it cannot process it.
countDegradeToOperations in interface OperationDefinition@MediaPropertyClear(value="DegradeTo") public void clearDegradeToOperations()
OperationDefinitionClears the list degrade-to operations of this operation definition, omitting this optional property.
clearDegradeToOperations in interface OperationDefinition@MediaPropertyCount(value="OperationParametersDefined") public int countOperationParametersDefined()
OperationDefinitionReturn the number of parameter definitions of the defined operation, which specify the parameters that can be used as controls for the operation.
countOperationParametersDefined in interface OperationDefinition@MediaPropertyClear(value="OperationParametersDefined") public void clearOperationParametersDefined()
@MediaProperty(uuid1=87033093, uuid2=0, uuid3=0, uuid4={6,14,43,52,1,1,1,1}, definedName="Bypass", typeName="UInt32", optional=true, uniqueIdentifier=false, pid=7688, symbol="Bypass") public int getBypass() throws PropertyNotPresentException
This is a 1-based index. A value of 0 indicates this optional property
is not set.
getBypass in interface OperationDefinitionPropertyNotPresentException - The optional bypass property is
not present in the defined operation.OperationDefinition.getBypass()@MediaPropertySetter(value="Bypass") public void setBypass(Integer bypass)
OperationDefinitionSets the bypass media segment index, which specifies the array index (1-based)
of the input segment which is the primary input. This value
allows the client application to pick one of the inputs
(foreground, background, etc.) to stand in for the
effect if it is not available, and none of the degrade to
effects are available. Set this optional property to null
to omit it.
setBypass in interface OperationDefinitionbypass - Index of bypass media segment for the defined operation.@MediaProperty(uuid1=87033098, uuid2=0, uuid3=0, uuid4={6,14,43,52,1,1,1,2}, definedName="OperationCategory", typeName="OperationCategoryType", optional=true, uniqueIdentifier=false, pid=7686, symbol="OperationCategory") public AUID getOperationCategory() throws PropertyNotPresentException
OperationDefinitionReturns an AUID identifying the category of the defined operation, which specifies the kind of operation, such as video effect, audio effect, or 3D operation. This is an optional property.
getOperationCategory in interface OperationDefinitionPropertyNotPresentException - The optional operation category property is not present
for the defined operation.OperationCategoryType,
TypeDefinitions.OperationCategoryType@MediaPropertySetter(value="OperationCategory") public void setOperationCategory(AUID operationCategory)
OperationDefinitionSets an AUID identifying the
category of the defined operation, which specifies the kind of operation, such as video effect,
audio effect, or 3D operation. Set this optional property to null to omit
it.
setOperationCategory in interface OperationDefinitionoperationCategory - AUID indicating the category of the defined operation.OperationCategoryType,
TypeDefinitions.OperationCategoryType@MediaProperty(uuid1=87033097, uuid2=0, uuid3=0, uuid4={6,14,43,52,1,1,1,2}, definedName="OperationDataDefinition", aliases={"DataDefinition","OperationDefinitionDataDefinition"}, typeName="DataDefinitionWeakReference", optional=false, uniqueIdentifier=false, pid=7681, symbol="OperationDataDefinition") public DataDefinition getOperationDataDefinition()
OperationDefinitionReturns the kind of data that is produced by the defined operation.
getOperationDataDefinition in interface OperationDefinitionTypeDefinitions.DataDefinitionWeakReference,
Warehouse.lookup(Class, String)@MediaPropertySetter(value="OperationDataDefinition") public void setOperationDataDefinition(DataDefinition operationDdataDefinition) throws NullPointerException
OperationDefinitionSets the kind of data that is produced by the defined operation.
setOperationDataDefinition in interface OperationDefinitionoperationDdataDefinition - Kind of data produced by the defined operation.NullPointerException - The given data definition is null.TypeDefinitions.DataDefinitionWeakReference,
Warehouse.lookup(Class, String)public static final DataDefinition initializeOperationDataDefinition()
@MediaProperty(uuid1=100729092, uuid2=1025, uuid3=0, uuid4={6,14,43,52,1,1,1,2}, definedName="DegradeTo", typeName="OperationDefinitionWeakReferenceVector", optional=true, uniqueIdentifier=false, pid=7683, symbol="DegradeTo") public List<OperationDefinition> getDegradeToOperations() throws PropertyNotPresentException
OperationDefinitionReturns the list of degrade-to operation definitions of the defined operation, which specify simpler operations that an application can substitute for the defined operation if it cannot process it. The definitions are ordered from the most desirable to the least desirable alternative.
getDegradeToOperations in interface OperationDefinitionPropertyNotPresentException - No degrade to operations are present for this
operation definition.@MediaProperty(uuid1=87033092, uuid2=0, uuid3=0, uuid4={6,14,43,52,1,1,1,1}, definedName="OperationInputCount", aliases="NumberInputs", typeName="Int32", optional=false, uniqueIdentifier=false, pid=7687, symbol="OperationInputCount") public int getOperationInputCount()
OperationDefinitionReturns the number of input media segments of the defined operation definition. A value of -1 indicates that the effect can have any number of input segments.
getOperationInputCount in interface OperationDefinition@MediaPropertySetter(value="OperationInputCount") public void setOperationInputCount(int operationInputCount)
OperationDefinitionSets the number of input media segments for the defined operation. A value of -1 indicates that the effect can have any number of input segments.
setOperationInputCount in interface OperationDefinitionoperationInputCount - Number of input media segments of the defined
operation.public static final int initializeOperationInputCount()
@MediaProperty(uuid1=100729092, uuid2=770, uuid3=0, uuid4={6,14,43,52,1,1,1,2}, definedName="OperationParametersDefined", aliases={"ParametersDefined","ParameterDefinitions"}, typeName="ParameterDefinitionWeakReferenceSet", optional=true, uniqueIdentifier=false, pid=7689, symbol="OperationParametersDefined") public Set<ParameterDefinition> getOperationParametersDefined() throws PropertyNotPresentException
OperationDefinitionReturns the collection of parameter definitions of the defined operation, which specify the parameters that can be used as controls for the operation.
getOperationParametersDefined in interface OperationDefinitionPropertyNotPresentException - No parameter definitions are present for the
defined operation.OperationGroup.addParameter(Parameter),
TypeDefinitions.ParameterDefinitionStrongReferenceSet@MediaListInsertAt(value="DegradeTo") public void insertDegradeToOperationAt(int index, OperationDefinition operationDefinition) throws NullPointerException, IndexOutOfBoundsException
OperationDefinitionInsert an operation definition into the degrade-to list of definitions of the defined operation at the given index. The degrade-to list of operation definitions specify simpler operations that an application can substitute for the defined operation if it cannot process it. Operation definitions already existing at the given and higher indices will be moved up to the next higher index to accommodate.
insertDegradeToOperationAt in interface OperationDefinitionindex - 0-based index at which the operation definition is to be inserted.operationDefinition - Degrade-to operation definition to insert at the
specified index.NullPointerException - The given operation definition is null.IndexOutOfBoundsException - The index is outside the acceptable range for
the current degrade-to list.public boolean isTimeWarp()
OperationDefinitionReturns true if the length of an operation group
is different from the lengths of the input segments, for example a
slow motion effect.
If this optional property is not present, its default value of false is returned.
isTimeWarp in interface OperationDefinitionOperationDefinition.ISTIMEWARP_DEFAULT,
OperationDefinition.getIsTimeWarp()@MediaProperty(uuid1=87033091, uuid2=0, uuid3=0, uuid4={6,14,43,52,1,1,1,1}, definedName="IsTimeWarp", typeName="Boolean", optional=true, uniqueIdentifier=false, pid=7682, symbol="IsTimeWarp") public boolean getIsTimeWarp()
OperationDefinitionReturns true if the length of an operation group
is different from the lengths of the input segments, for example a
slow motion effect.
If this optional property is not present, its default value of false is returned.
getIsTimeWarp in interface OperationDefinitionOperationDefinition.ISTIMEWARP_DEFAULT,
OperationDefinition.isTimeWarp()@MediaPropertySetter(value="IsTimeWarp") public void setIsTimeWarp(Boolean isTimeWarp)
OperationDefinitionSet to true to indicate that the the length of an
operation group is different from the lengths of the input segments,
for example a slow motion effect.
The default value for this optional property is false. To
omit this optional property, call this method with null.
setIsTimeWarp in interface OperationDefinitionisTimeWarp - Does this operation change the total length of segments
in the associated operation group?OperationDefinition.ISTIMEWARP_DEFAULTpublic ParameterDefinition lookupOperationParameter(AUID parameterDefinition) throws NullPointerException, ObjectNotFoundException
OperationDefinitionLooks up and returns the parameter definition corresponding to the given identifier from the collection of defined parameters of the defined operation.
lookupOperationParameter in interface OperationDefinitionparameterDefinition - Identity of the parameter definition to look up.NullPointerException - The given identifier for a parameter definition is
null.ObjectNotFoundException - The given identifier does not correspond
to a parameter definition of the defined operation.@MediaListPrepend(value="DegradeTo") public void prependDegradeToOperation(OperationDefinition operationDefinition) throws NullPointerException
OperationDefinitionPrepend an operation definition to the degrade-to list of operation definitions of the defined operation, which specify simpler operations that an application can substitute for the defined operation if it cannot process it. Use this function to add an operation definition to be scanned first when searching for a replacement, to be considered as a more desirable alternate operation.
prependDegradeToOperation in interface OperationDefinitionoperationDefinition - Degrade-to operation definition to add.NullPointerException - The given degrade-to operation definition is null.@MediaListRemoveAt(value="DegradeTo") public void removeDegradeToOperationAt(int index) throws IndexOutOfBoundsException
OperationDefinitionRemoves the indexed operation definition from the degrade-to list of operation definitions of the defined operation, which specify simpler operations that an application can substitute for the defined operation if it cannot process it. Operation definitions already existing at indices higher than the given index will be moved down to the next lower index to accommodate.
removeDegradeToOperationAt in interface OperationDefinitionindex - 0-based index of operation definition to remove from the
degrade-to list of the defined operationIndexOutOfBoundsException - The index is outside the range acceptable range for
the current degrade-to list.public OperationDefinition clone()
InterchangeObjectCreate a cloned copy of this interchange object.
clone in interface MediaEntityclone in interface DefinitionObjectclone in interface InterchangeObjectclone in interface OperationDefinitionclone in class DefinitionObjectImplpublic String getOperationCategoryString()
public void setOperationCategoryString(String operationCategory)
(c)2007-2016 Richard Cartwright, all rights reserved. Licensed under Apache 2 license and subject to the AMWA IPR policy.