SparkControl_API/MethodExecutionDemo.cs
2025-03-27 16:01:28 +08:00

61 lines
2.2 KiB
C#

using System;
using System.Collections.Generic;
namespace Tecan.At.AutomationInterface.SampleApp
{
internal class MethodExecutionDemo
{
[Demo("checkMethod <methodFile>", '4')]
public static void CheckMethod(SampleApp sampleApp, SessionData sessionData)
{
Console.Write("methodFile? ");
var methodFile = Console.ReadLine();
IEnumerable<string> messages;
sampleApp.CheckMethod(sessionData, methodFile, out messages);
Console.WriteLine(sessionData.MethodIsValid ? "valid" : "invalid");
foreach (var message in messages)
{
Console.WriteLine(message);
}
}
[Demo("executeMethod <methodFile>", '5')]
public static void ExecuteMethod(SampleApp sampleApp, SessionData sessionData)
{
Console.Write("methodFile? ");
var methodFile = Console.ReadLine();
sampleApp.ExecuteMethod(sessionData, methodFile, "AutomationInterfaceMethod", new int[] { });
}
[Demo("executeMethodAsync <methodFile>", '6')]
public static void ExecuteMethodAsync(SampleApp sampleApp, SessionData sessionData)
{
Console.Write("methodFile? ");
var methodFile = Console.ReadLine();
sampleApp.ExecuteMethodAsync(sessionData, methodFile, "AutomationInterfaceMethod", new int[] { });
}
[Demo("executeMethodAsyncAndCancel <methodFile>", '7')]
public static void ExecuteMethodAsyncWithCancellation(SampleApp sampleApp, SessionData sessionData)
{
Console.Write("methodFile? ");
var methodFile = Console.ReadLine();
sampleApp.ExecuteMethodAsyncAndCancel(sessionData, methodFile, "AutomationInterfaceMethod", new int[] { });
}
[Demo("executeMethod (with stacker) <methodFile>", 'e')]
public static void ExecuteMethodWithStacker(SampleApp sampleApp, SessionData sessionData)
{
Console.Write("methodFile? ");
var methodFile = Console.ReadLine();
sampleApp.ExecuteMethod(sessionData, methodFile, "AutomationInterfaceMethod", new int[] { }, true);
}
}
}