It is intended that the MTP sub-system be capable of supporting a number of different operational modes in addition to the default MTP currently implemented. In the future support may be added for either or both a pure PTP mode and a PictBridge mode. It is also intended that it be capable of dynamically switching between modes on request. Note that a mode change received while a transport connection is active would go into effect only after all active connections have been closed.
In anticipation of supporting addition modes of operation an MTP mode
switching interface has been defined. This interface is implemented using the
Symbian OS Publish and Subscribe mechanism. Clients of this interface will use the Symbian OS
RProperty API, specifying the KUidMTPModeKeyValue
key to select
the mode of operation.
The MTP framework will respond to changes of mode by enabling and disabling various protocol features as appropriate. It may also potentially unload and load various data providers to restrict the set of active data providers to those that are able to support the current mode. For example, switching from MTP to a PictBridge would result in those data providers which do not support PictBridge protocols and still image object data formats being unloaded by the framework.
In order to support mode switching, each data provider is required to specify in its configuration data the mode(s) of operation that it is able to support