Dreamine.IO.Fastech.Ethernet
1.0.1
Dreamine.IO.Fastech.Ethernet 산업 자동화 및 I/O 기능을 제공합니다.
Toggle main menu visibility
로딩중...
검색중...
일치하는것 없음
FastechAnalogOutputChannel.cs
이 파일의 문서화 페이지로 가기
1
using
Dreamine.IO.Abstractions.Channels;
2
using
Dreamine.IO.Abstractions.Models;
3
using
Dreamine.IO.Abstractions.Results;
4
using
Dreamine.IO.Fastech.Ethernet.Controllers
;
5
6
namespace
Dreamine.IO.Fastech.Ethernet.Channels
;
7
16
public
sealed
class
FastechAnalogOutputChannel : IAnalogOutputChannel
17
{
26
private
readonly
FastechEthernetIoController
_controller
;
27
52
internal
FastechAnalogOutputChannel(
FastechEthernetIoController
controller)
53
{
54
_controller
= controller ??
throw
new
ArgumentNullException(nameof(controller));
55
}
56
89
public
async Task<IoResult<double>>
ReadAsync
(AnalogIoPoint point, CancellationToken cancellationToken =
default
)
90
{
91
var result = await
_controller
.ReadAnalogOutputsAsync([point], cancellationToken).ConfigureAwait(
false
);
92
93
if
(!result.IsSuccess || result.Value is
null
)
94
{
95
return
IoResult<double>.Failure(result.Message ??
"Failed to read the analog output."
, result.ErrorCode);
96
}
97
98
return
result.Value.Length == 1
99
? IoResult<double>.Success(result.Value[0])
100
: IoResult<double>.Failure(
"The analog output response did not contain exactly one value."
);
101
}
102
143
public
Task<IoResult>
WriteAsync
(AnalogIoPoint point,
double
value, CancellationToken cancellationToken =
default
)
144
{
145
return
WriteAsync
(
new
Dictionary<AnalogIoPoint, double> { [point] = value }, cancellationToken);
146
}
147
180
public
Task<IoResult>
WriteAsync
(IReadOnlyDictionary<AnalogIoPoint, double> values, CancellationToken cancellationToken =
default
)
181
{
182
return
_controller
.WriteAnalogOutputsAsync(values, cancellationToken);
183
}
184
}
Dreamine.IO.Fastech.Ethernet.Channels
Definition
FastechAnalogInputChannel.cs:6
Dreamine.IO.Fastech.Ethernet.Controllers
Definition
FastechEthernetIoController.cs:11
Dreamine.IO.Fastech.Ethernet.Channels.FastechAnalogOutputChannel.WriteAsync
Task< IoResult > WriteAsync(IReadOnlyDictionary< AnalogIoPoint, double > values, CancellationToken cancellationToken=default)
Definition
FastechAnalogOutputChannel.cs:180
Dreamine.IO.Fastech.Ethernet.Channels.FastechAnalogOutputChannel.ReadAsync
async Task< IoResult< double > > ReadAsync(AnalogIoPoint point, CancellationToken cancellationToken=default)
Definition
FastechAnalogOutputChannel.cs:89
Dreamine.IO.Fastech.Ethernet.Channels.FastechAnalogOutputChannel.WriteAsync
Task< IoResult > WriteAsync(AnalogIoPoint point, double value, CancellationToken cancellationToken=default)
Definition
FastechAnalogOutputChannel.cs:143
Dreamine.IO.Fastech.Ethernet.Channels.FastechAnalogOutputChannel._controller
readonly FastechEthernetIoController _controller
Definition
FastechAnalogOutputChannel.cs:26
Dreamine.IO.Fastech.Ethernet.Controllers.FastechEthernetIoController
Definition
FastechEthernetIoController.cs:22
Channels
FastechAnalogOutputChannel.cs
다음에 의해 생성됨 :
1.17.0