SampleSmart 1.0.0.0
SampleSmart 사용 방법을 보여 주는 예제 프로젝트입니다.
로딩중...
검색중...
일치하는것 없음
SampleSmart.Pages.MainWindowViewModel 클래스 참조

더 자세히 ...

SampleSmart.Pages.MainWindowViewModel에 대한 상속 다이어그램 :
SampleSmart.Pages.MainWindowViewModel에 대한 협력 다이어그램:

Public 멤버 함수

 MainWindowViewModel (IDreamineLogger logger, IDreamineThreadManager threadManager)
void Initialize ()

속성

string Title [get]
string Message [get]

Private 멤버 함수

partial void Ok ()
partial void Cancel ()
partial void Minimize ()
partial void Maximize ()
partial void Close ()
partial void SubPage ()
partial void SubPage2 ()
partial void LogPage ()
partial void ThreadPage ()
partial void CommunicationPage ()
partial void PlcPage ()
partial void IoPage ()
partial void DatabasePage ()
partial void SubWindow ()
partial void NoticeWindow ()
partial void MonitorWindow ()
partial void SettingWindow ()
void RegisterSampleMonitoringJob ()
ValueTask ExecuteSampleMonitoringJobAsync (CancellationToken token)

Private 속성

MainWindowModel _model
MainWindowEvent _event
readonly IDreamineLogger _logger
readonly IDreamineThreadManager _threadManager
bool _isInitialized
bool _isSampleMonitoringJobRegistered
int _sampleMonitoringTickCount

정적 Private 속성

const string SampleMonitoringJobName = "Sample-MonitoringJob"

상세한 설명

MainWindow에 대한 ViewModel 클래스입니다. Model과 Event 사이의 바인딩을 담당합니다.

MainWindow.xaml.ViewModel.cs 파일의 18 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ MainWindowViewModel()

SampleSmart.Pages.MainWindowViewModel.MainWindowViewModel ( IDreamineLogger logger,
IDreamineThreadManager threadManager )
inline

지정한 설정으로 MainWindowViewModel 클래스의 새 인스턴스를 초기화합니다.

매개변수
loggerlogger에 사용할 IDreamineLogger 값입니다.
threadManagerthread Manager에 사용할 IDreamineThreadManager 값입니다.

MainWindow.xaml.ViewModel.cs 파일의 326 번째 라인에서 정의되었습니다.

327 {
328 _model = null!;
329 _event = null!;
330 _ = _model;
331 _ = _event;
332
333 _logger = logger;
334 _threadManager = threadManager;
335
336 Initialize();
337 }

다음을 참조함 : _event, _logger, _model, _threadManager, Initialize().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

멤버 함수 문서화

◆ Cancel()

partial void SampleSmart.Pages.MainWindowViewModel.Cancel ( )
private

Cancel 동작 실행.

◆ Close()

partial void SampleSmart.Pages.MainWindowViewModel.Close ( )
private

Close 동작 실행.

◆ CommunicationPage()

partial void SampleSmart.Pages.MainWindowViewModel.CommunicationPage ( )
private

Communication Monitor 페이지 이동 동작 실행.

◆ DatabasePage()

partial void SampleSmart.Pages.MainWindowViewModel.DatabasePage ( )
private

Database 샘플 페이지 이동 동작 실행.

◆ ExecuteSampleMonitoringJobAsync()

ValueTask SampleSmart.Pages.MainWindowViewModel.ExecuteSampleMonitoringJobAsync ( CancellationToken token)
inlineprivate

Execute Sample Monitoring Job Async 작업을 수행합니다.

매개변수
tokentoken에 사용할 CancellationToken 값입니다.
반환값
Execute Sample Monitoring Job Async 작업에서 생성한 ValueTask 결과입니다.

MainWindow.xaml.ViewModel.cs 파일의 420 번째 라인에서 정의되었습니다.

421 {
422 if (token.IsCancellationRequested)
423 {
424 return ValueTask.CompletedTask;
425 }
426
427 _sampleMonitoringTickCount++;
428
429 if (_sampleMonitoringTickCount % 100 == 0)
430 {
431 _logger.Debug(
432 $"Sample monitoring thread tick. Count={_sampleMonitoringTickCount}");
433 }
434
435 return ValueTask.CompletedTask;
436 }

다음을 참조함 : _logger, _sampleMonitoringTickCount.

다음에 의해서 참조됨 : RegisterSampleMonitoringJob().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ Initialize()

void SampleSmart.Pages.MainWindowViewModel.Initialize ( )
inline

Initialize 작업을 수행합니다.

MainWindow.xaml.ViewModel.cs 파일의 347 번째 라인에서 정의되었습니다.

348 {
349 if (_isInitialized)
350 {
351 return;
352 }
353
354 _isInitialized = true;
355
356 RegisterSampleMonitoringJob();
357 }

다음을 참조함 : _isInitialized, RegisterSampleMonitoringJob().

다음에 의해서 참조됨 : MainWindowViewModel().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ IoPage()

partial void SampleSmart.Pages.MainWindowViewModel.IoPage ( )
private

I/O Monitor 페이지 이동 동작 실행.

◆ LogPage()

partial void SampleSmart.Pages.MainWindowViewModel.LogPage ( )
private

Log Page 작업을 수행합니다.

◆ Maximize()

partial void SampleSmart.Pages.MainWindowViewModel.Maximize ( )
private

Maximize 동작 실행.

◆ Minimize()

partial void SampleSmart.Pages.MainWindowViewModel.Minimize ( )
private

Minimize 동작 실행.

◆ MonitorWindow()

partial void SampleSmart.Pages.MainWindowViewModel.MonitorWindow ( )
private

Monitor Window 작업을 수행합니다.

◆ NoticeWindow()

partial void SampleSmart.Pages.MainWindowViewModel.NoticeWindow ( )
private

Notice Window 작업을 수행합니다.

◆ Ok()

partial void SampleSmart.Pages.MainWindowViewModel.Ok ( )
private

OK 동작 실행.

◆ PlcPage()

partial void SampleSmart.Pages.MainWindowViewModel.PlcPage ( )
private

PLC Monitor 페이지 이동 동작 실행.

◆ RegisterSampleMonitoringJob()

void SampleSmart.Pages.MainWindowViewModel.RegisterSampleMonitoringJob ( )
inlineprivate

Register Sample Monitoring Job 작업을 수행합니다.

MainWindow.xaml.ViewModel.cs 파일의 367 번째 라인에서 정의되었습니다.

368 {
369 if (_isSampleMonitoringJobRegistered)
370 {
371 _logger.Warning($"{SampleMonitoringJobName} is already registered.");
372 return;
373 }
374
375 _isSampleMonitoringJobRegistered = true;
376
377 _threadManager.Register(
378 new DreamineThreadOptions
379 {
380 Name = SampleMonitoringJobName,
381 Priority = DreamineThreadPriority.Normal,
382 IntervalMs = 10,
383 CoreMode = DreamineThreadCoreMode.Auto,
384 AutoThreadsPerCore = 2,
385 OverflowPollingIntervalMs = 20,
386 AutoStart = true,
387 UseHighPrecisionTimer = true,
388 YieldWhenIntervalIsZero = true,
389 UseAdaptiveCpuDelay = true
390 },
391 ExecuteSampleMonitoringJobAsync);
392
393 _logger.Info($"{SampleMonitoringJobName} registered from MainWindowViewModel.");
394 }

다음을 참조함 : _isSampleMonitoringJobRegistered, _logger, _threadManager, ExecuteSampleMonitoringJobAsync(), SampleMonitoringJobName.

다음에 의해서 참조됨 : Initialize().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SettingWindow()

partial void SampleSmart.Pages.MainWindowViewModel.SettingWindow ( )
private

ting Window 값을 설정합니다.

◆ SubPage()

partial void SampleSmart.Pages.MainWindowViewModel.SubPage ( )
private

SubPage 이동 동작 실행.

◆ SubPage2()

partial void SampleSmart.Pages.MainWindowViewModel.SubPage2 ( )
private

Sub Page2 작업을 수행합니다.

◆ SubWindow()

partial void SampleSmart.Pages.MainWindowViewModel.SubWindow ( )
private

SubWindow 오픈 동작 실행.

◆ ThreadPage()

partial void SampleSmart.Pages.MainWindowViewModel.ThreadPage ( )
private

Thread Monitor 페이지 이동 동작 실행.

멤버 데이터 문서화

◆ _event

MainWindowEvent SampleSmart.Pages.MainWindowViewModel._event
private

event 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 39 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : MainWindowViewModel().

◆ _isInitialized

bool SampleSmart.Pages.MainWindowViewModel._isInitialized
private

is Initialized 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 282 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : Initialize().

◆ _isSampleMonitoringJobRegistered

bool SampleSmart.Pages.MainWindowViewModel._isSampleMonitoringJobRegistered
private

is Sample Monitoring Job Registered 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 291 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : RegisterSampleMonitoringJob().

◆ _logger

readonly IDreamineLogger SampleSmart.Pages.MainWindowViewModel._logger
private

logger 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 263 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ExecuteSampleMonitoringJobAsync(), MainWindowViewModel(), RegisterSampleMonitoringJob().

◆ _model

MainWindowModel SampleSmart.Pages.MainWindowViewModel._model
private

model 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 29 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : MainWindowViewModel().

◆ _sampleMonitoringTickCount

int SampleSmart.Pages.MainWindowViewModel._sampleMonitoringTickCount
private

sample Monitoring Tick Count 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 300 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : ExecuteSampleMonitoringJobAsync().

◆ _threadManager

readonly IDreamineThreadManager SampleSmart.Pages.MainWindowViewModel._threadManager
private

thread Manager 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 272 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : MainWindowViewModel(), RegisterSampleMonitoringJob().

◆ SampleMonitoringJobName

const string SampleSmart.Pages.MainWindowViewModel.SampleMonitoringJobName = "Sample-MonitoringJob"
staticprivate

Sample Monitoring Job Name 값을 보관합니다.

MainWindow.xaml.ViewModel.cs 파일의 253 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : RegisterSampleMonitoringJob().

속성 문서화

◆ Message

string SampleSmart.Pages.MainWindowViewModel.Message
get

Message 값을 가져옵니다.

MainWindow.xaml.ViewModel.cs 파일의 57 번째 라인에서 정의되었습니다.

◆ Title

string SampleSmart.Pages.MainWindowViewModel.Title
get

Title 값을 가져옵니다.

MainWindow.xaml.ViewModel.cs 파일의 48 번째 라인에서 정의되었습니다.


이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.: