|
Media Authoring with Java API |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface PluginDefinition
Specifies the definition of code objects that provide an implementation for a definition, such as a codec definition, or for a meta definition, such as a class definition.
Note that the mechanism of supporting plugins has yet to be determined for the current implementation of the MAJ API.
makePluginDefinition()
,
PluginIdentifiers
,
Dictionary.getPluginDefinitions()
Field Summary | |
---|---|
static boolean |
ACCELERATOR_DEFAULT
Default value for the accelerator property, which is false. |
static boolean |
AUTHENTICATION_DEFAULT
Default value for the authentication property, which is false. |
static boolean |
SOFTWAREONLY_DEFAULT
Default value for the software only property, which is false. |
Method Summary | |
---|---|
void |
appendLocator(Locator locator)
Append a locator to the list of plugin locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
int |
countLocators()
Returns the number of locators in the list of plugin locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
AUID |
getCategoryClass()
Returns the plugin category of this plugin definition, which specifies the kind of the defined plugin. |
AUID |
getDefinitionObjectID()
Returns the definition object handled by the plugin defined by this plugin definition. |
AUID |
getEngine()
Returns the software engine identifier that identifies the software subsystem used for essence management and playback for the defined plugin. |
VersionType[] |
getEngineVersionRange()
Returns the minimum and maximum software engine versions of the defined plugin, which specify the minimum and maximum versions of the engine for which this plugin will function. |
AUID |
getHardwarePlatform()
Returns the hardware platform identifier of the defined plugin, which identifies the platform by both its hardware platform and operating system. |
Locator |
getLocatorAt(int index)
Returns the locator at the given index from the list of locators of this plugin descriptor, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
List<? extends Locator> |
getLocators()
Returns the list of locators of the plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
AUID |
getManufacturerID()
Returns an AUID that identifies the manufacturer of this plugin definition. |
NetworkLocator |
getManufacturerInfo()
Returns a network locator pointing to manufacturer information for the plugin definition, which provides a link to a web page containing information about the manufacturer. |
VersionType[] |
getPlatformVersionRange()
Returns the minimum and maximum platform version properties of this plugin definition, which specify the minimum and maximum versions of the platform for which the defined plugin will function. |
AUID |
getPluginAPI()
Returns the identifier for the manufacturer's interface that is supported by the defined plugin. |
VersionType[] |
getPluginAPIVersionRange()
Returns the minimum and maximum plugin API version properties of the defined plugin, which are the minimum and maximum versions of the plugin API for which this plugin will function. |
String |
getPluginManufacturerName()
Returns the plugin manufacturer name for this plugin definition, which specifies a string that can be used to identify the plugin manufacturer to the user. |
VersionType |
getPluginVersion()
Returns the version number property of this plugin descriptor, which specifies the plugin version. |
String |
getPluginVersionString()
Returns the plugin version string of this plugin definition, which specifies a string that can be used to identify the plugin version to the user. |
void |
insertLocatorAt(int index,
Locator locator)
Insert a locator at the given index into the list of locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
boolean |
isAccelerated()
Returns true if the plugin defined by this
plugin definition is capable of running with a hardware accelerator;
otherwise false . |
boolean |
isSoftwareOnly()
Returns true if the plugin defined by this
plugin definition is capable of running in a software-only environment;
otherwise false . |
void |
prependLocator(Locator locator)
Prepend a locator to the list of plugin locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
void |
removeLocatorAt(int index)
Remove the locator at the given index from the list of locators of the plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. |
void |
setCategoryClass(AUID categoryClass)
Sets the plugin category of this plugin definition, which specifies the kind of the defined plugin. |
void |
setDefinitionObjectID(AUID definitionObjectId)
Sets the definition object handled by the plugin defined by by this plugin definition. |
void |
setEngine(AUID engine)
Sets the software engine identifier that identifies the software subsystem used for essence management and playback for the defined plugin. |
void |
setEngineMaximumVersion(VersionType maxVersion)
Sets the maximum engine version property of the defined plugin, which specifies the maximum version of the engine for which this plugin will function. |
void |
setEngineMinimumVersion(VersionType minVersion)
Sets the minimum engine version property of the defined plugin, which specifies the minimum version of the engine for which this plugin will function. |
void |
setHardwarePlatform(AUID hardwarePlatform)
Sets the hardware platform identifier of the defined plugin, which identifies the platform by both the hardware platform and operating system. |
void |
setIsAccelerated(Boolean isAccelerated)
Set to true if the plugin defined by this
plugin definition is capable of running with a hardware accelerator;
otherwise false . |
void |
setIsSoftwareOnly(Boolean isSoftwareOnly)
Set to true if the plugin defined by this
plugin definition is capable of running in a software-only environment;
otherwise false . |
void |
setManufacturerID(AUID manufacturerId)
Sets the AUID that identifies the manufacturer of this plugin definition. |
void |
setManufacturerInfo(NetworkLocator manufacturerInfo)
Set a network locator pointing to the location of manufacturer information for the plugin definition. |
void |
setPlatformMaximumVersion(VersionType maxVersion)
Sets the maximum platform version property of the plugin definition, which specifies the maximum version of the platform for which the defined plugin will function. |
void |
setPlatformMinimumVersion(VersionType minVersion)
Sets the minimum platform version property of this plugin definition, which specifies the minimum version of the platform for which the defined plugin will function. |
void |
setPluginAPI(AUID pluginApi)
Sets the identifier for the manufacturer's interface that is supported by the defined plugin. |
void |
setPluginAPIMaximumVersion(VersionType maxVersion)
Sets the maximum plugin API version property of the defined plugin, which specifies the maximum version number of the specified plugin interfaces that the plugin supports. |
void |
setPluginAPIMinimumVersion(VersionType minVersion)
Sets the minimum plugin API version property of the defined plugin, which specifies the minimum version number of the specified plugin interfaces that the plugin supports. |
void |
setPluginManufacturerName(String pluginManufacturerName)
Set the plugin manufacturer name for the plugin definition, which specifies a string that can be used to identify the plugin manufacturer to the user. |
void |
setPluginVersion(VersionType version)
Sets the version number property of this plugin descriptor, which specifies the plugin version. |
void |
setPluginVersionString(String pluginVersionString)
Sets the plugin version string of this plugin definition, which specifies a string that can be used to identify the plugin version to the user. |
void |
setSupportsAuthentication(Boolean supportsAuthentication)
Set to true if the plugin defined by this
plugin definition is capable of supporting authentication;
otherwise false . |
boolean |
supportsAuthentication()
Returns true if the plugin defined by this
plugin definition is capable of supporting authentication;
otherwise false . |
Methods inherited from interface tv.amwa.maj.iface.DefinitionObject |
---|
getAUID, getDescription, getName, setDescription, setName |
Methods inherited from interface tv.amwa.maj.iface.InterchangeObject |
---|
countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, setPropertyValue |
Field Detail |
---|
static final boolean SOFTWAREONLY_DEFAULT
Default value for the software only property, which is false. The property specifies if the plugin is capable of executing in a software-only environment.
isSoftwareOnly()
,
setIsSoftwareOnly(Boolean)
,
Constant Field Valuesstatic final boolean ACCELERATOR_DEFAULT
Default value for the accelerator property, which is false. The property specifies if the plugin is capable of using hardware to accelerate essence processing.
isAccelerated()
,
setIsAccelerated(Boolean)
,
Constant Field Valuesstatic final boolean AUTHENTICATION_DEFAULT
Default value for the authentication property, which is false. The property specifies that the plugin implementation supports authentication.
supportsAuthentication()
,
setSupportsAuthentication(Boolean)
,
Constant Field ValuesMethod Detail |
---|
AUID getCategoryClass()
Returns the plugin category of this plugin definition, which specifies the kind of the defined plugin. The AAF built in categories are:
PluginCategoryType
,
TypeDefinitionExtendibleEnumeration.PluginCategoryType
void setCategoryClass(AUID categoryClass) throws NullPointerException
Sets the plugin category of this plugin definition, which specifies the kind of the defined plugin. The AAF built in categories are:
categoryClass
- Kind of plugin defined.
NullPointerException
- The given plugin category is null
.PluginCategoryType
,
TypeDefinitionExtendibleEnumeration.PluginCategoryType
VersionType getPluginVersion()
Returns the version number property of this plugin descriptor, which specifies the plugin version.
void setPluginVersion(VersionType version) throws NullPointerException
Sets the version number property of this plugin descriptor, which specifies the plugin version.
NullPointerException
- The given version number is null
.void setPluginVersionString(@AAFString String pluginVersionString)
Sets the plugin version string of this plugin definition, which specifies
a string that can be used to identify the plugin version to the user. Set
this optional property to null
to omit it.
pluginVersionString
- Plugin version string of this plugin
definition.@AAFString String getPluginVersionString() throws PropertyNotPresentException
Returns the plugin version string of this plugin definition, which specifies a string that can be used to identify the plugin version to the user.
PropertyNotPresentException
- The optional version string property is not present in
this plugin definition.void setPluginManufacturerName(@AAFString String pluginManufacturerName)
Set the plugin manufacturer name for the plugin definition, which specifies a string
that can be used to identify the plugin manufacturer to the user. Set this optional
property to null
to omit it.
pluginManufacturerName
- Plugin manufacturer name for this
plugin definition.@AAFString String getPluginManufacturerName() throws PropertyNotPresentException
Returns the plugin manufacturer name for this plugin definition, which specifies a string that can be used to identify the plugin manufacturer to the user. This is an optional property.
PropertyNotPresentException
- The optional manufacturer's name is not set for the
plugin definition.NetworkLocator getManufacturerInfo() throws PropertyNotPresentException
Returns a network locator pointing to manufacturer information for the plugin definition, which provides a link to a web page containing information about the manufacturer.
PropertyNotPresentException
- The optional manufacturer information property is not present
for this plugin definition.void setManufacturerInfo(NetworkLocator manufacturerInfo)
Set a network locator pointing to the location of manufacturer information for the plugin definition. A successful call to this method will result in any existing manufacturer information being replaced.
manufacturerInfo
- Network locator for pointing to manufacturer
information for the definition.AUID getManufacturerID() throws PropertyNotPresentException
Returns an AUID that identifies the manufacturer of this plugin definition. This is an optional property.
PropertyNotPresentException
- The optional manufacturer id property is not
present in this plugin definition.void setManufacturerID(AUID manufacturerId)
Sets the AUID that identifies the
manufacturer of this plugin definition. Set this optional property to null
to omit it.
manufacturerId
- Manufacturer id for this plugin definition.@HardwarePlatform AUID getHardwarePlatform() throws PropertyNotPresentException
Returns the hardware platform identifier of the defined plugin, which identifies the platform by both its hardware platform and operating system. This is an optional property.
PropertyNotPresentException
- The optional hardware platform property is not present
in this plugin definition.PluginIdentifiers.Platform_Independent
void setHardwarePlatform(@HardwarePlatform AUID hardwarePlatform)
Sets the hardware platform identifier of the defined plugin, which identifies
the platform by both the hardware platform and operating system.
Set this optional property to null
to omit it.
hardwarePlatform
- Hardware platform identifier for this plugin
definition.PluginIdentifiers.Platform_Independent
VersionType[] getPlatformVersionRange() throws PropertyNotPresentException
Returns the minimum and maximum platform version properties of this plugin definition, which specify the minimum and maximum versions of the platform for which the defined plugin will function. The platform version range properties are optional.
The value returned is an array containing two version numbers with the value at index 0 being the minimum version number and the value at index 1 being the maximum.
PropertyNotPresentException
- The optional platform version range is
not fully specified in this plugin definition.void setPlatformMinimumVersion(VersionType minVersion)
Sets the minimum platform version property
of this plugin definition, which specifies the minimum version of the platform
for which the defined plugin will function. Set this optional property to
null
to omit it.
minVersion
- Minimum platform version of this plugin definition.void setPlatformMaximumVersion(VersionType maxVersion)
Sets the maximum platform version property
of the plugin definition, which specifies the maximum version of the platform
for which the defined plugin will function. Set this optional property to
null
to omit it.
maxVersion
- Maximum platform version of this plugin definition.@Engine AUID getEngine() throws PropertyNotPresentException
Returns the software engine identifier that identifies the software subsystem used for essence management and playback for the defined plugin. This is an optional property.
PropertyNotPresentException
- The optional engine property is not present
in this plugin definition.PluginIdentifiers.Engine_None
void setEngine(@Engine AUID engine)
Sets the software engine identifier that identifies the software
subsystem used for essence management and playback for the
defined plugin. Set this optional property to null
to
omit it.
engine
- Software engine identifier for the plugin definition.PluginIdentifiers.Engine_None
VersionType[] getEngineVersionRange() throws PropertyNotPresentException
Returns the minimum and maximum software engine versions of the defined plugin, which specify the minimum and maximum versions of the engine for which this plugin will function. The engine version range properties are optional.
The value returned is an array containing two version numbers with the value at index 0 being the minimum version number and the value at index 1 being the maximum.
PropertyNotPresentException
- The optional engine version range property is not fully
specified in this plugin definition.getEngine()
void setEngineMinimumVersion(VersionType minVersion)
Sets the minimum engine version property
of the defined plugin, which specifies the minimum version of the engine for which this
plugin will function. Set this optional property to null
to omit it.
minVersion
- Minimum engine version for this plugin definition.void setEngineMaximumVersion(VersionType maxVersion)
Sets the maximum engine version property
of the defined plugin, which specifies the maximum version of the engine for which this
plugin will function. Set this optional property to null
to omit it.
maxVersion
- Maximum engine version for the plugin definition.@PluginAPI AUID getPluginAPI() throws PropertyNotPresentException
Returns the identifier for the manufacturer's interface that is supported by the defined plugin. This is an optional property.
PropertyNotPresentException
- The optional plugin API property is not
present in this plugin definition.PluginIdentifiers.PluginAPI_EssenceAccess
void setPluginAPI(@PluginAPI AUID pluginApi)
Sets the identifier for the manufacturer's interface that is supported
by the defined plugin. Set this optional property to null
to
omit it.
pluginApi
- Identifier for the plugin interface property of this plugin definition.PluginIdentifiers.Engine_None
VersionType[] getPluginAPIVersionRange() throws PropertyNotPresentException
Returns the minimum and maximum plugin API version properties of the defined plugin, which are the minimum and maximum versions of the plugin API for which this plugin will function. The plugin API version range properties are optional.
The value returned is an array containing two version numbers with the value at index 0 being the minimum version number and the value at index 1 being the maximum.
PropertyNotPresentException
- The optional plugin API version range is not present in
this plugin definition.getPluginAPI()
void setPluginAPIMinimumVersion(VersionType minVersion)
Sets the minimum plugin API version property
of the defined plugin, which specifies the minimum version number of the specified plugin
interfaces that the plugin supports. Set this optional property to null
to
omit it.
minVersion
- The minimum plugin API version of this plugin definition.void setPluginAPIMaximumVersion(VersionType maxVersion)
Sets the maximum plugin API version property
of the defined plugin, which specifies the maximum version number of the specified plugin
interfaces that the plugin supports. Set this optional property to null
to
omit it.
maxVersion
- Maximum plugin API version for this plugin definition.@Bool boolean isSoftwareOnly()
Returns true
if the plugin defined by this
plugin definition is capable of running in a software-only environment;
otherwise false
. A value of true
indicates
that no additional hardware is required. If the result is
true
then this plugin may also support hardware
acceleration, as long as it also supports a software-only
method of processing data.
If this optional property is not present, the default value of false is returned.
SOFTWAREONLY_DEFAULT
void setIsSoftwareOnly(@Bool Boolean isSoftwareOnly)
Set to true
if the plugin defined by this
plugin definition is capable of running in a software-only environment;
otherwise false
. A value of true
indicates
that no additional hardware is required. If the result is
true
then this plugin may also support hardware
acceleration, as long as it also supports a software-only
method of processing data.
The default value of this optional property is false. To
omit this optional property, call this method with null
.
isSoftwareOnly
- Does the plugin definition represent a plugin
that is capable of running in a software-only environment?SOFTWAREONLY_DEFAULT
@Bool boolean isAccelerated()
Returns true
if the plugin defined by this
plugin definition is capable of running with a hardware accelerator;
otherwise false
. If the result is true
then the plugin may additionally support software decompression.
If this optional property is not present, the default value of false is returned.
ACCELERATOR_DEFAULT
void setIsAccelerated(@Bool Boolean isAccelerated)
Set to true
if the plugin defined by this
plugin definition is capable of running with a hardware accelerator;
otherwise false
. If the result is true
then the plugin may additionally support software decompression.
The default value for this optional property is false. To
omit this optional property, call this method with null
.
isAccelerated
- Is the plugin associated with the plugin
definition capable of running with hardware acceleration?ACCELERATOR_DEFAULT
@Bool boolean supportsAuthentication()
Returns true
if the plugin defined by this
plugin definition is capable of supporting authentication;
otherwise false
.
If this optional property is not present, the default value of false is returned.
AUTHENTICATION_DEFAULT
void setSupportsAuthentication(@Bool Boolean supportsAuthentication)
Set to true
if the plugin defined by this
plugin definition is capable of supporting authentication;
otherwise false
.
The default value for this optional property is false. To
omit this optional property, call this method with null
.
supportsAuthentication
- Is the plugin represented by the plugin definition capable
of supporting authentication?AUTHENTICATION_DEFAULT
@UInt32 int countLocators()
Returns the number of locators in the list of plugin locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. The number of locators may be zero if the plugin is in the current file, which is also when this optional property is not present.
void appendLocator(Locator locator) throws NullPointerException
Append a locator to the list of plugin locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. Use this method to add a locator to be scanned last when searching for the plugin's implementation. The locator list is an optional property that will be made present by calling this method if it is currently omitted.
locator
- Locator of the plugin to append to the list of
locators of this plugin definition.
NullPointerException
- The given locator to append is null
.void prependLocator(Locator locator) throws NullPointerException
Prepend a locator to the list of plugin locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. Use this method to add a locator to be scanned first when searching for the plugin's implementation. The locator list is an optional property that will be made present by calling this method if it is currently omitted.
locator
- Locator to prepend to the list of plugin locators of the
plugin definition.
NullPointerException
- The given locator to prepend is null
.void insertLocatorAt(@UInt32 int index, Locator locator) throws NullPointerException, IndexOutOfBoundsException
Insert a locator at the given index into the list of locators of this plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation. Locators already existing at the named and higher indices will be moved up to the next higher index to accommodate to inserted item. The locator list is an optional property that may be made present by calling this method with an index of 0.
index
- Index where the locator should be inserted.locator
- Locator to insert into the list of plugin locators of this
plugin definition.
NullPointerException
- The given locator to insert is null
.
IndexOutOfBoundsException
- The given index is outside the
acceptable range for the current list of locators.Locator getLocatorAt(@UInt32 int index) throws IndexOutOfBoundsException
Returns the locator at the given index from the list of locators of this plugin descriptor, which specify an ordered list of locators that identify locations that provide access to the plugin implementation.
index
- Index of the locator to retrieve from the list of locators.
IndexOutOfBoundsException
- The given index is outside the
acceptable range for the current list of locators.void removeLocatorAt(@UInt32 int index) throws IndexOutOfBoundsException
Remove the locator at the given index from the list of locators of the plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation.
index
- Index of locator to remove from the list of locators
of the plugin definition.
IndexOutOfBoundsException
- The given index is outside
the acceptable range for the current list of locators.List<? extends Locator> getLocators()
Returns the list of locators of the plugin definition, which specify an ordered list of locators that identify locations that provide access to the plugin implementation.
void setDefinitionObjectID(AUID definitionObjectId) throws NullPointerException
Sets the definition object handled by the plugin defined by by this plugin definition. This property specifies the AUID of the class definition for the definition or meta definition that it provides an implementation of.
As of AAF version 1.1, this property must be specified. This was an optional property in version 1.0.
definitionObjectId
- Definition object of the plugin definition.
NullPointerException
- The given definition object identifier is null
.getCategoryClass()
AUID getDefinitionObjectID() throws PropertyNotPresentException
Returns the definition object handled by the plugin defined by this plugin definition. This property specifies the AUID of the class definition for the definition or meta definition that it provides an implementation of.
As of AAF version 1.1, this property must be specified. This was an optional property in version 1.0.
PropertyNotPresentException
- Although the definition object should be specified, this
was not a required property in older versions of the AAF specification and is not present for
this plugin definition.
|
Media Authoring with Java API |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |