SC profile shall define means through which the API user can indicate that the API implementation may proceed with transition from the current mode to another mode.
Rationale: API-user application may invoke API functionality over a period, during which it expects the implementation to remain in a certain mode. Since the length of this period cannot be known in advance, if there is no means for the application to indicate the end of this period, the API implementation may inadvertently proceed with transition to a different mode before the end of the mentioned period.
Example: SC profile can define function Result transition(Mode paramMode) which indicates to the API implementation that the implementation may proceed with transition to mode paramMode, where Mode can be defined as enum class Mode { non_safe, safe }, and where result can be defined as enum class Result { error, in_progress, transitioned }.
SC profile shall define means through which the API user can indicate that the API implementation may proceed with transition from the current mode to another mode.
Rationale: API-user application may invoke API functionality over a period, during which it expects the implementation to remain in a certain mode. Since the length of this period cannot be known in advance, if there is no means for the application to indicate the end of this period, the API implementation may inadvertently proceed with transition to a different mode before the end of the mentioned period.
Example: SC profile can define function
Result transition(Mode paramMode)
which indicates to the API implementation that the implementation may proceed with transition to modeparamMode
, whereMode
can be defined asenum class Mode { non_safe, safe }
, and whereresult
can be defined asenum class Result { error, in_progress, transitioned }
.