32
32
using System . Collections . Generic ;
33
33
using System . Drawing ;
34
34
using System . Threading ;
35
+ using System . Threading . Tasks ;
35
36
using System . Windows . Forms ;
36
37
37
38
using SharpDX . XAudio2 ;
@@ -63,10 +64,7 @@ public partial class MainWindow : Form
63
64
/// </summary>
64
65
private XAudio2 AudioDevice
65
66
{
66
- get
67
- {
68
- return _AudioDevice ;
69
- }
67
+ get => _AudioDevice ;
70
68
set
71
69
{
72
70
_AudioDevice = value ;
@@ -124,16 +122,6 @@ private Dictionary<BuzzerNumber, BuzzerUI> ListBuzzer2UI
124
122
set ;
125
123
}
126
124
127
- /// <summary>
128
- /// True = Buzzer in verkehrter Reihenfolge abfragen.
129
- /// </summary>
130
- private bool PollReverse
131
- {
132
- get ;
133
- set ;
134
- }
135
-
136
-
137
125
/// <summary>
138
126
/// Timer fuer die Abfrage des Buzzers.
139
127
/// </summary>
@@ -238,8 +226,6 @@ public MainWindow()
238
226
BuzzerNumber . Four
239
227
} ;
240
228
241
-
242
- PollReverse = false ;
243
229
LastWindowState = WindowState ;
244
230
SetLanguage = string . Empty ;
245
231
@@ -1127,6 +1113,16 @@ private void ChangeLanguage( string language )
1127
1113
/// <param name="buttonFound">True = Erster Button eines Buzzers wurde gedrueckt</param>
1128
1114
private void Buzzer1_DrawButton ( object sender , BuzzerNumber buzzerNumber , BuzzerButton buzzerButton , bool isPressed , bool buzzerFound , bool buttonFound )
1129
1115
{
1116
+ if ( buzzerFound )
1117
+ {
1118
+ ListSounds [ Soundfile . BuzzerPressed ] . Play ( ) ;
1119
+ }
1120
+
1121
+ if ( buttonFound )
1122
+ {
1123
+ ListSounds [ Soundfile . ButtonClick ] . Play ( ) ;
1124
+ }
1125
+
1130
1126
if ( buzzerButton == BuzzerButton . Buzzer )
1131
1127
{
1132
1128
ListBuzzer1UI [ buzzerNumber ] . SetBuzzer ( isPressed ) ;
@@ -1137,7 +1133,6 @@ private void Buzzer1_DrawButton( object sender, BuzzerNumber buzzerNumber, Buzze
1137
1133
}
1138
1134
}
1139
1135
1140
-
1141
1136
/// <summary>
1142
1137
/// Button auf dem Buzzer #2 zeichnen.
1143
1138
/// </summary>
@@ -1149,6 +1144,16 @@ private void Buzzer1_DrawButton( object sender, BuzzerNumber buzzerNumber, Buzze
1149
1144
/// <param name="buttonFound">True = Erster Button eines Buzzers wurde gedrueckt</param>
1150
1145
private void Buzzer2_DrawButton ( object sender , BuzzerNumber buzzerNumber , BuzzerButton buzzerButton , bool isPressed , bool buzzerFound , bool buttonFound )
1151
1146
{
1147
+ if ( buzzerFound )
1148
+ {
1149
+ ListSounds [ Soundfile . BuzzerPressed ] . Play ( ) ;
1150
+ }
1151
+
1152
+ if ( buttonFound )
1153
+ {
1154
+ ListSounds [ Soundfile . ButtonClick ] . Play ( ) ;
1155
+ }
1156
+
1152
1157
if ( buzzerButton == BuzzerButton . Buzzer )
1153
1158
{
1154
1159
ListBuzzer2UI [ buzzerNumber ] . SetBuzzer ( isPressed ) ;
@@ -1175,21 +1180,10 @@ private void Buzzer2_DrawButton( object sender, BuzzerNumber buzzerNumber, Buzze
1175
1180
/// <summary>
1176
1181
/// Buzzer abfragen.
1177
1182
/// </summary>
1178
- private void PollBuzzer_Tick ( object sender , EventArgs e )
1179
- {
1180
- if ( PollReverse )
1181
- {
1182
- BuzzerDevice2 . Poll ( ) ;
1183
- BuzzerDevice1 . Poll ( ) ;
1184
- }
1185
- else
1186
- {
1187
- BuzzerDevice1 . Poll ( ) ;
1188
- BuzzerDevice2 . Poll ( ) ;
1189
- }
1190
-
1191
- PollReverse = ! PollReverse ;
1192
- }
1183
+ private void PollBuzzer_Tick ( object sender , EventArgs e ) => Parallel . Invoke (
1184
+ ( ) => BuzzerDevice1 . Poll ( ) ,
1185
+ ( ) => BuzzerDevice2 . Poll ( )
1186
+ ) ;
1193
1187
1194
1188
1195
1189
/// <summary>
0 commit comments