IGLib  1.5
The IGLib base library for development of numerical, technical and business applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events
IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base Class Reference

Base class for reporter classes that contain either reporting via system console, via message box, via speech, or any combination thereof. More...

+ Inheritance diagram for IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base:
+ Collaboration diagram for IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base:

Public Member Functions

override void Report (ReportType messagetype, string location, string message, Exception ex)
 Basic reporting method (overloaded). Launches an error report, a warning report or other kind of report/message. Supplemental data (such as objects necessary to launch visualize the report or operation flags) are obtained from the class' instance. More...
 

Static Public Member Functions

static void Articulate (string text, bool only_one)
 Speaks out a specified text. The caller can specify that articulation of only one text can be requested simultaneously. More...
 
static void Articulate (string text)
 Speeks a specified text. If functino is called from multiple threads simultaneously then calls are serialized. More...
 

Public Attributes

ReportDelegate ReportDlgSpeech = new ReportDelegate(DefaultReport_Speech)
 Delegate that performs error reporting via speech. It calls delegates ReportDlg to assemble error location information and ReportMessageDlg to assemble error message. Then it uses both to assemble the final decorated error message and launches it in its own way. More...
 
ReportLocationDelegate ReportLocationDlgSpeech = new ReportLocationDelegate(DefaultReportLocation_Speech)
 Delegate that assembles the error location string for reporting via speech. More...
 
ReportMessageDelegate ReportMessageDlgSpeech = new ReportMessageDelegate(DefaultReportMessage_Speech)
 Delegate that assembles the eror message string for reporting via speech. More...
 

Protected Member Functions

override void ReadAppSettingsBasic (string groupname)
 Reads settings for a specified named group of reporters from the application configuration file. More...
 
virtual void Report_Speech (ReportType messagetype, string location, string message, Exception ex)
 Launches a report via speech. Report is launched by using special delegates for this kind of reporting. If the corresponding delegates for error location and message are not specified then general delegates are used for this purporse, or location and message string are simple assembled by this function. More...
 

Static Protected Member Functions

static void DefaultReport_Speech (Reporter reporter, ReportType messagetype, string location, string message)
 Delegat for launching a report via speech. More...
 
static string DefaultReportLocation_Speech (Reporter reporter, ReportType messagetype, string location, Exception ex)
 Delegate for assembling a location string for this kind of report. More...
 
static string DefaultReportMessage_Speech (Reporter reporter, ReportType messagetype, string basicmessage, Exception ex)
 Delegate for assembling a report message for this kind of report. More...
 

Protected Attributes

const string KeyUseSpeech = "UseSpeech"
 

Properties

virtual bool UseSpeech [get, set]
 Gets or sets the flag specifying whether reporting using a message box is performed or not. More...
 
virtual ReportLevel SpeechLevelSignal [get, set]
 Gets or sets the reporting level for speaking out signals (such as "Warning", "Error", "Information", etc.) More...
 
virtual ReportLevel SpeechLevelMessage [get, set]
 Gets or sets the reporting level for speaking out message text. More...
 
static object VoiceLock [get]
 
static SpVoice Voice [get, set]
 

Static Private Member Functions

static void ThreadArticulate (object txt)
 

Private Attributes

bool _UseSpeech = false
 
ReportLevel _SpeechLevelSignal = ReportLevel.Warning
 
ReportLevel _SpeechLevelMessage = ReportLevel.Off
 

Static Private Attributes

static SpVoice _voice = null
 
static object _voiceLock = new object()
 
static int _numSpeaking = 0
 
static string ArticulateText = ""
 

Detailed Description

Base class for reporter classes that contain either reporting via system console, via message box, via speech, or any combination thereof.

Code common to all classes is put here. This is to reduce duplication of code as much as possible, while at the same time achieving pure behavior, similar as with ReporterConsoleMsgbox_Base. Interfaces are intended to clearly distinguish between various functionality supported.

Member Function Documentation

override void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.ReadAppSettingsBasic ( string  groupname)
inlineprotected

Reads settings for a specified named group of reporters from the application configuration file.

Parameters
groupnameName of the group of reporters for which the settings apply.
override void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.Report ( ReportType  messagetype,
string  location,
string  message,
Exception  ex 
)
inline

Basic reporting method (overloaded). Launches an error report, a warning report or other kind of report/message. Supplemental data (such as objects necessary to launch visualize the report or operation flags) are obtained from the class' instance.

Parameters
messagetypeThe type of the report (e.g. Error, Warning, etc.).
locationUser-provided description of error location.
messageUser-provided description of error.
exException thrown when error occurred.
static void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.Articulate ( string  text,
bool  only_one 
)
inlinestatic

Speaks out a specified text. The caller can specify that articulation of only one text can be requested simultaneously.

Parameters
textText to be articulated.
only_oneIf true then only one text can be articulated at a given time. If the function is called during articulation of another text then it exits without triggering articulation.
static void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.Articulate ( string  text)
inlinestatic

Speeks a specified text. If functino is called from multiple threads simultaneously then calls are serialized.

Parameters
textText to be spoken.
static void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.DefaultReport_Speech ( Reporter  reporter,
ReportType  messagetype,
string  location,
string  message 
)
inlinestaticprotected

Delegat for launching a report via speech.

Parameters
reporterReporter object where additional information can be found.
messagetypeType of the report(Error, Warning, Info...).
locationShort string desctribing location where report was triggered.
messageMessage of the report.

References IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.SpeechLevelMessage, and IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.SpeechLevelSignal.

static void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.ThreadArticulate ( object  txt)
inlinestaticprivate
static string IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.DefaultReportLocation_Speech ( Reporter  reporter,
ReportType  messagetype,
string  location,
Exception  ex 
)
inlinestaticprotected

Delegate for assembling a location string for this kind of report.

Parameters
reporterReporter object where additional information can be found.
messagetypeType of the report(Error, Warning, Info...).
locationUser provided location string.
exException that triggered reporting.
Returns
Location string that can be used in a report.
static string IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.DefaultReportMessage_Speech ( Reporter  reporter,
ReportType  messagetype,
string  basicmessage,
Exception  ex 
)
inlinestaticprotected

Delegate for assembling a report message for this kind of report.

Parameters
reporterReporter object where additional information can be found.
messagetypeType of the report(Error, Warning, Info...).
basicmessageUser provided message string.
exException that triggered reporting.
Returns
Message string that can be used in a report.
virtual void IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.Report_Speech ( ReportType  messagetype,
string  location,
string  message,
Exception  ex 
)
inlineprotectedvirtual

Launches a report via speech. Report is launched by using special delegates for this kind of reporting. If the corresponding delegates for error location and message are not specified then general delegates are used for this purporse, or location and message string are simple assembled by this function.

Parameters
messagetypeType of the report(Error, Warning, Info...).
locationUser provided location string.
messageUser provided message string.
exException that triggered reporting.

Member Data Documentation

const string IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.KeyUseSpeech = "UseSpeech"
protected
bool IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base._UseSpeech = false
private
ReportLevel IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base._SpeechLevelSignal = ReportLevel.Warning
private
ReportLevel IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base._SpeechLevelMessage = ReportLevel.Off
private
SpVoice IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base._voice = null
staticprivate
object IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base._voiceLock = new object()
staticprivate
int IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base._numSpeaking = 0
staticprivate
ReportDelegate IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.ReportDlgSpeech = new ReportDelegate(DefaultReport_Speech)

Delegate that performs error reporting via speech. It calls delegates ReportDlg to assemble error location information and ReportMessageDlg to assemble error message. Then it uses both to assemble the final decorated error message and launches it in its own way.

ReportLocationDelegate IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.ReportLocationDlgSpeech = new ReportLocationDelegate(DefaultReportLocation_Speech)

Delegate that assembles the error location string for reporting via speech.

ReportMessageDelegate IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.ReportMessageDlgSpeech = new ReportMessageDelegate(DefaultReportMessage_Speech)

Delegate that assembles the eror message string for reporting via speech.

string IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.ArticulateText = ""
staticprivate

Property Documentation

virtual bool IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.UseSpeech
getset

Gets or sets the flag specifying whether reporting using a message box is performed or not.

virtual ReportLevel IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.SpeechLevelSignal
getset

Gets or sets the reporting level for speaking out signals (such as "Warning", "Error", "Information", etc.)

Referenced by IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.DefaultReport_Speech().

virtual ReportLevel IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.SpeechLevelMessage
getset

Gets or sets the reporting level for speaking out message text.

Referenced by IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.DefaultReport_Speech().

object IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.VoiceLock
staticget
SpVoice IG.ReporterMsgForms.ReporterConsoleMsgboxSpeech_Base.Voice
staticgetset

The documentation for this class was generated from the following file: