Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Convert the following sample C# methods found in Visual Studio to C++ methods, 1

ID: 3676387 • Letter: C

Question

Convert the following sample C# methods found in Visual Studio to C++ methods,

1.

static void PromptBuilding()
        {
            PromptBuilder builder = new PromptBuilder();

            builder.StartSentence();
            builder.AppendText("This is a prompt building example.");
            builder.EndSentence();

            builder.StartSentence();
            builder.AppendText("Now, there will be a break of 2 seconds.");
            builder.EndSentence();

            builder.AppendBreak(new TimeSpan(0, 0, 2));

            builder.StartStyle(new PromptStyle(PromptVolume.ExtraSoft));
            builder.AppendText("This text is spoken extra soft.");
            builder.EndStyle();

            builder.StartStyle(new PromptStyle(PromptRate.Fast));
            builder.AppendText("This text is spoken fast.");
            builder.EndStyle();

            SpeechSynthesizer synthesizer = new SpeechSynthesizer();
            synthesizer.Speak(builder);
            synthesizer.Dispose();
        }

2.

static void speechRecognitionWithDictationGrammar_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
        {
            if (e.Result.Text == "exit")
            {
                manualResetEvent.Set();
                return;
            }
            Console.WriteLine("You said: " + e.Result.Text);
        }

3.

static void SpeechRecognitionWithDictationGrammar()
        {
            _recognizer = new SpeechRecognitionEngine();
            _recognizer.LoadGrammar(new Grammar(new GrammarBuilder("exit")));
            _recognizer.LoadGrammar(new DictationGrammar());
            _recognizer.SpeechRecognized += speechRecognitionWithDictationGrammar_SpeechRecognized;
            _recognizer.SetInputToDefaultAudioDevice();
            _recognizer.RecognizeAsync(RecognizeMode.Multiple);
        }

4.

static void speechRecognitionWithChoices_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
        {
            Console.WriteLine("Do you really " + e.Result.Words[1].Text + " " + e.Result.Words[2].Text + "?");
            manualResetEvent.Set();
        }

5.

static void SpeechRecognitionWithChoices()
        {
            _recognizer = new SpeechRecognitionEngine();
            GrammarBuilder grammarBuilder = new GrammarBuilder();
            grammarBuilder.Append("I"); // add "I"
            grammarBuilder.Append(new Choices("like", "dislike")); // load "like" & "dislike"
            grammarBuilder.Append(new Choices("dogs", "cats", "birds", "snakes", "fishes", "tigers", "lions", "snails", "elephants")); // add animals
            _recognizer.LoadGrammar(new Grammar(grammarBuilder)); // load grammar
            _recognizer.SpeechRecognized += speechRecognitionWithChoices_SpeechRecognized;
            _recognizer.SetInputToDefaultAudioDevice(); // set input to default audio device
            _recognizer.RecognizeAsync(RecognizeMode.Multiple); // recognize speech
        }

6.

static void _emulateRecognize_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
        {
            if (e.Result.Text == "emulate speech")
            {
                Console.WriteLine("Speech was emulated!");
            }
            manualResetEvent.Set();
        }

7.

static void EmulateRecognize()
        {
            _recognizer = new SpeechRecognitionEngine();
            _recognizer.LoadGrammar(new Grammar(new GrammarBuilder("emulate speech"))); // load "emulate speech" grammar
            _recognizer.SpeechRecognized += _emulateRecognize_SpeechRecognized;

            _recognizer.EmulateRecognize("emulate speech");

        }

8.

static void _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e)
        {
            if (e.Result.Alternates.Count == 0)
            {
                Console.WriteLine("No candidate phrases found.");
                return;
            }
            Console.WriteLine("Speech rejected. Did you mean:");
            foreach (RecognizedPhrase r in e.Result.Alternates)
            {
                Console.WriteLine("    " + r.Text);
            }
        }

9.

static void _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
        {
            if (e.Result.Text == "hello computer")
            {
                SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer();
                speechSynthesizer.Speak("hello user");
                speechSynthesizer.Dispose();
            }
            manualResetEvent.Set();
        }

10.

static void RecognizeSpeechAndMakeSureTheComputerSpeaksToYou()
        {
            _recognizer = new SpeechRecognitionEngine();
            _recognizer.LoadGrammar(new Grammar(new GrammarBuilder("hello computer"))); // load a "hello computer" grammar
            _recognizer.SpeechRecognized += _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognized; // if speech is recognized, call the specified method
            _recognizer.SpeechRecognitionRejected += _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognitionRejected;
            _recognizer.SetInputToDefaultAudioDevice(); // set the input to the default audio device
            _recognizer.RecognizeAsync(RecognizeMode.Multiple); // recognize speech asynchronous
        }

Explanation / Answer

1.
//.h file code:

static void PromptBuilding();

//.cpp file code:

void <missing_class_definition>::PromptBuilding()
{
           PromptBuilder *builder = new PromptBuilder();
           builder->StartSentence();
           builder->AppendText(L"This is a prompt building example.");
           builder->EndSentence();
           builder->StartSentence();
           builder->AppendText(L"Now, there will be a break of 2 seconds.");
           builder->EndSentence();
           builder->AppendBreak(TimeSpan(0, 0, 2));
           builder->StartStyle(new PromptStyle(PromptVolume::ExtraSoft));
           builder->AppendText(L"This text is spoken extra soft.");
           builder->EndStyle();
           builder->StartStyle(new PromptStyle(PromptRate::Fast));
           builder->AppendText(L"This text is spoken fast.");
           builder->EndStyle();
           SpeechSynthesizer *synthesizer = new SpeechSynthesizer();
           synthesizer->Speak(builder);
           delete synthesizer;
}


2.
//.h file code:

#include <string>
#include <iostream>

static void speechRecognitionWithDictationGrammar_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e);

//.cpp file code:

void <missing_class_definition>::speechRecognitionWithDictationGrammar_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e)
{
           if (e->Result->Text == L"exit")
           {
               manualResetEvent::Set();
               return;
           }
           std::wcout << std::wstring(L"You said: ") << e->Result->Text << std::endl;
}

3.
//.h file code:

static void SpeechRecognitionWithDictationGrammar();

//.cpp file code:

void <missing_class_definition>::SpeechRecognitionWithDictationGrammar()
{
           _recognizer = new SpeechRecognitionEngine();
           _recognizer::LoadGrammar(new Grammar(new GrammarBuilder(L"exit")));
           _recognizer::LoadGrammar(new DictationGrammar());
           _recognizer::SpeechRecognized += speechRecognitionWithDictationGrammar_SpeechRecognized;
           _recognizer::SetInputToDefaultAudioDevice();
           _recognizer::RecognizeAsync(RecognizeMode::Multiple);
}


4.
//.h file code:

#include <string>
#include <iostream>

static static void speechRecognitionWithChoices_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e);

//.cpp file code:

static void <missing_class_definition>::speechRecognitionWithChoices_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e)
{
           std::wcout << std::wstring(L"Do you really ") << e->Result->Words[1]->Text << std::wstring(L" ") << e->Result->Words[2]->Text << std::wstring(L"?") << std::endl;
           manualResetEvent::Set();
}

5.
//.h file code:

static void SpeechRecognitionWithChoices();

//.cpp file code:

void <missing_class_definition>::SpeechRecognitionWithChoices()
{
           _recognizer = new SpeechRecognitionEngine();
           GrammarBuilder *grammarBuilder = new GrammarBuilder();
           grammarBuilder->Append(L"I"); // add "I"
           grammarBuilder->Append(new Choices(L"like", L"dislike")); // load "like" & "dislike"
           grammarBuilder->Append(new Choices(L"dogs", L"cats", L"birds", L"snakes", L"fishes", L"tigers", L"lions", L"snails", L"elephants")); // add animals
           _recognizer::LoadGrammar(new Grammar(grammarBuilder)); // load grammar
           _recognizer::SpeechRecognized += speechRecognitionWithChoices_SpeechRecognized;
           _recognizer::SetInputToDefaultAudioDevice(); // set input to default audio device
           _recognizer::RecognizeAsync(RecognizeMode::Multiple); // recognize speech
}


6.

//.h file code:

#include <string>
#include <iostream>

static void _emulateRecognize_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e);

//.cpp file code:

void <missing_class_definition>::_emulateRecognize_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e)
{
           if (e->Result->Text == L"emulate speech")
           {
               std::wcout << std::wstring(L"Speech was emulated!") << std::endl;
           }
           manualResetEvent::Set();
}


7.
//.h file code:

static void EmulateRecognize();

//.cpp file code:

void <missing_class_definition>::EmulateRecognize()
{
       _recognizer = new SpeechRecognitionEngine();
       _recognizer::LoadGrammar(new Grammar(new GrammarBuilder(L"emulate speech"))); // load "emulate speech" grammar
       _recognizer::SpeechRecognized += _emulateRecognize_SpeechRecognized;
       _recognizer::EmulateRecognize(L"emulate speech");
}


8.

//.h file code:

#include <string>
#include <iostream>

static void _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognitionRejected(void *sender, SpeechRecognitionRejectedEventArgs *e);

//.cpp file code:

void <missing_class_definition>::_recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognitionRejected(void *sender, SpeechRecognitionRejectedEventArgs *e)
{
           if (e->Result->Alternates->Count == 0)
           {
               std::wcout << std::wstring(L"No candidate phrases found.") << std::endl;
               return;
           }
           std::wcout << std::wstring(L"Speech rejected. Did you mean:") << std::endl;
           for (RecognizedPhrase *r : e->Result->Alternates)
           {
               std::wcout << std::wstring(L" ") << r->Text << std::endl;
           }
}


9.

//.h file code:

static void _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e);

//.cpp file code:

void <missing_class_definition>::_recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognized(void *sender, SpeechRecognizedEventArgs *e)
{
       if (e->Result->Text == L"hello computer")
       {
           SpeechSynthesizer *speechSynthesizer = new SpeechSynthesizer();
           speechSynthesizer->Speak(L"hello user");
           delete speechSynthesizer;
       }
       manualResetEvent::Set();
}


10.

//.h file code:

static void RecognizeSpeechAndMakeSureTheComputerSpeaksToYou();

//.cpp file code:

void <missing_class_definition>::RecognizeSpeechAndMakeSureTheComputerSpeaksToYou()
{
       _recognizer = new SpeechRecognitionEngine();
       _recognizer::LoadGrammar(new Grammar(new GrammarBuilder(L"hello computer"))); // load a "hello computer" grammar
       _recognizer::SpeechRecognized += _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognized; // if speech is recognized, call the specified method
       _recognizer::SpeechRecognitionRejected += _recognizeSpeechAndMakeSureTheComputerSpeaksToYou_SpeechRecognitionRejected;
       _recognizer::SetInputToDefaultAudioDevice(); // set the input to the default audio device
       _recognizer::RecognizeAsync(RecognizeMode::Multiple); // recognize speech asynchronous
}