xtd 0.2.0
prompt_event_args.h
Go to the documentation of this file.
1 #pragma once
5 #include "prompt.h"
6 #include "../../any.h"
7 #include "../../optional.h"
8 #include "../../event_args.h"
9 #include "../../system_exception.h"
10 #include <functional>
11 
13 namespace xtd {
15  namespace speech {
17  namespace synthesis {
19  class speech_synthesizer;
21 
36  friend class speech_synthesizer;
37  public:
39  prompt_event_args(const prompt_event_args&) = default;
41  prompt_event_args& operator =(const prompt_event_args&) = default;
43 
46  bool cancelled() const noexcept {return cancelled_;}
47 
50  std::optional<std::reference_wrapper<const xtd::system_exception>> error() const noexcept {return error_ ? std::optional<std::reference_wrapper<const xtd::system_exception>>(*error_) : std::nullopt; }
51 
54  const xtd::speech::synthesis::prompt& prompt() const noexcept {return *prompt_;}
55 
58  std::any user_state() const noexcept {return user_state_;}
59 
60  private:
61  prompt_event_args(bool cancelled, const xtd::system_exception* error, xtd::speech::synthesis::prompt* prompt, std::any user_state) : cancelled_(cancelled), error_(error), prompt_(prompt), user_state_(user_state) {}
62  prompt_event_args(bool cancelled, const xtd::system_exception* error, xtd::speech::synthesis::prompt* prompt) : cancelled_(cancelled), error_(error), prompt_(prompt) {}
63 
64  bool cancelled_ = false;
65  const xtd::system_exception* error_ = nullptr;
66  xtd::speech::synthesis::prompt* prompt_ = nullptr;
67  std::any user_state_;
68  };
69  }
70  }
71 }
Defines the base class for predefined exceptions in the xtd namespace.
Definition: system_exception.h:24
Represents information about what can be rendered, either text or an audio file, by the xtd::speech::...
Definition: prompt.h:34
Represents the base class for classes that contain event data, and provides a value to use for events...
Definition: event_args.h:18
Contains xtd::speech::synthesis::prompt class.
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
const xtd::speech::synthesis::prompt & prompt() const noexcept
Gets the prompt associated with the event.
Definition: prompt_event_args.h:54
std::any user_state() const noexcept
Gets the unique identifier for the asynchronous task.
Definition: prompt_event_args.h:58
bool cancelled() const noexcept
Gets a value indicating whether an asynchronous operation has been canceled.
Definition: prompt_event_args.h:46
Provides data for the method_name_completed event.
Definition: prompt_event_args.h:35
Provides access to the functionality of an installed speech synthesis engine.
Definition: speech_synthesizer.h:33
Indicates that all styles except allow_binary_specifier, allow_octal_specifier and allow_hex_specifie...
std::optional< std::reference_wrapper< const xtd::system_exception > > error() const noexcept
Gets a value indicating which error occurred during an asynchronous operation.
Definition: prompt_event_args.h:50