IIOMetadataobject, either by putting up a GUI to obtain values from a user, or by other means. This interface merely specifies a generic
activatemethod that invokes the controller, without regard for how the controller obtains values (i.e., whether the controller puts up a GUI or merely computes a set of values is irrelevant to this interface).
activate method, a controller obtains
initial values by querying the
settings, either using the XML DOM tree or a plug-in specific
interface, modifies values by whatever means, then modifies the
IIOMetadata object's settings, using either the
mergeTree methods, or a
plug-in specific interface. In general, applications may expect
that when the
activate method returns
IIOMetadata object is ready for
use in a write operation.
Vendors may choose to provide GUIs for the
IIOMetadata subclasses they define for a particular
plug-in. These can be set up as default controllers in the
Alternatively, an algorithmic process such as a database lookup
or the parsing of a command line could be used as a controller, in
which case the
activate method would simply look up or
compute the settings, call methods on
set its state, and return
(IIOMetadata metadata)Activates the controller. If
trueis returned, all settings in the
IIOMetadataobject should be ready for use in a write operation. If
falseis returned, no settings in the
IIOMetadataobject will be disturbed (i.e., the user canceled the operation).
IIOMetadataobject to be modified.
IIOMetadatahas been modified,
nullor is not an instance of the correct class.