GrammarBuilder Constructor (Choices)
Constructs a GrammarBuilder object from a phrase expressed as a Choices instance.
Namespace: Microsoft.Speech.Recognition
Assembly: Microsoft.Speech (in microsoft.speech.dll)
Syntax
'Declaration
Public Sub New ( _
alternateChoices As Choices _
)
public GrammarBuilder (
Choices alternateChoices
)
public:
GrammarBuilder (
Choices^ alternateChoices
)
public GrammarBuilder (
Choices alternateChoices
)
public function GrammarBuilder (
alternateChoices : Choices
)
Parameters
- alternateChoices
Valid instance of Choices used to construct a new instance of GrammarBuilder object.
Example
The code sample below constructs a Grammar which recognizes either of two phrases: "Make background [color]" or "Configure background as [color]" using a explicit creation of and implicit conversion to GrammarBuilder instances.
The explicit construction of a GrammarBuilder object using a Choices instance is highlighted in the example code below.
private Grammar CreateGrammarBuilderRGBSemantics2(params int[] info) {
//Create a set of choices, each a lookup from a color name to RGB
//Choices constructors do not take SematicResultValue, so cast SematicResultValue to GramarBuilder
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor))) {
SemanticResultValue choiceResultValue =
new SemanticResultValue(colorName, Color.FromName(colorName).ToARGB());
GrammarBuilder resultValueBuilder = new GrammarBuilder(choiceResultValue);
colorChoice.Add(resultValueBuilder);
}
SemanticResultKey choiceResultKey = new SemanticResultKey("RGB", colorChoice);
GrammarBuilder choiceBuilder = new GrammarBuilder(choiceResultKey);
//Create two intermediate grammars with introductory phrase and the color choice
GrammarBuilder makeBackgroundBuilder = "Make background";
makeBackgroundBuilder.Append(choiceBuilder);
GrammarBuilder configureBackgroundBuilder = new GrammarBuilder("Configure background as");
configureBackgroundBuilder.Append(new SemanticResultKey("RGB", colorChoice));
//Create the final grammar recognizing either intermediate grammar
//By creating a choice from both GrammarBuilders above
//Then constructing a GrammarBuilder from that choice
//Then constructing the grammar.
Choices bothChoices = new Choices(makeBackgroundBuilder, configureBackgroundBuilder);
GrammarBuilder bothBuilder = new GrammarBuilder(bothChoices);
Grammar grammar = new Grammar(bothBuilder);
grammar.Name = "Make Background /Configure background as";
return grammar;
}
Platforms
Development Platforms
Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition
Target Platforms
See Also
Reference
GrammarBuilder Class
GrammarBuilder Members
Microsoft.Speech.Recognition Namespace