Show page source of howto/create/helloworld #69094

[[PageOutline]]

= Hello, World プログラム =

以下に Hello, World プログラムを示します。

「ハローワールド」という音声を認識すると終了するコンソールアプリケーションプログラムです。

[[Embed(main.cpp)]]

!HelloWorldGrammar という文法と、!HelloWorldProcessor というプロセッサを定義しています。

-----

== !HelloWorldGrammar ==

ハローワールドという文法を受理するだけの単純な文法です。

!GrammarCommonImpl は、文法を構築するために使える共通文法クラスの実装です。

addGrammarTransition は、音声認識による状態遷移グラフを構築する !GrammarCommonImpl クラスのメソッドです。

「ハローワールド」という音声入力を受けて、始点から終点へ状態遷移する文法として構築しています。

-----

== !HelloWorldProcessor ==

開始とともに !HelloWorldGrammar を文法として設定し、音声認識の結果を受けて音声認識エンジンの動作を終了させます。

-----

== main ==

Controller に対して、

 * 音声認識エンジンに Microsoft Speech API を使ったのエンジンの指定
 * !HelloWorldProcessor の指定
 * !StdoutView の指定

を行っています。

controller.start で音声認識が開始します。本メソッドは、音声認識エンジンの動作が終了するまで待機状態になります。

そのため !HelloWorldProcessor の音声認識エンジンの動作終了を受けると、待機が解除されプログラムが終了するという動きになります。

!StdoutView は、標準出力にイベントの受理状況を報告するデバッグ用の汎用ビュー部品です。

-----