ISpRecoContext::GetMaxAlternates

Microsoft Speech SDK

The Microsoft.com Speech website Microsoft Speech SDK SAPI 5.1

ISpRecoContext::GetMaxAlternates

ISpRecoContext::GetMaxAlternates retrieves the maximum number of alternates that the SR engine will return for command and control or proprietary grammars associated with this context. See Remarks section.

HRESULT GetMaxAlternates(
   ULONG   *pcMaxAlternates
);

Parameters

pcMaxAlternates
[out] The maximum number of alternates. The default value is zero, unless the application specifies it by ISpRecoContext::SetMaxAlternates.

Return values

Value Description
S_OK Function completed successfully.
E_POINTER pcMaxAlternates is invalid or bad.
FAILED(hr) Appropriate error message.

Remarks

The value is the maximum number of alternates that will be returned to the application. For SR engine's that do not support command and control (or proprietary grammar) alternates, this method will succeed, but the alternates returned will always be zero.

For applications and SR engines that are using proprietary grammars and proprietary alternates, ISpRecoContext::GetMaxAlternates and ISpRecoContext::SetMaxAlternates is the recommended method of coordinating maximum alternate values between the application and SR engine.

The SR engine can query each context's maximum requested alternates value by calling ISpSREngineSite::GetContextMaxAlternates with the context handle. When using SAPI command and control grammars, the SR engine can call ISpSREngineSite::GetMaxAlternates with the rule handle.

This method has no effect on dictation alternates. See ISpRecoResult::GetAlternates for information regarding dictation alternates.

The current version of the Microsoft SR engine does not support command and control alternates.