2using System.Collections.Generic;
3using System.Reflection;
4using System.Runtime.InteropServices;
5using System.Threading.Tasks;
17 [Guid(
"E354519C-F138-4C2E-85CA-122D58C2F424")]
32 [Guid(
"1FDD6279-95C7-4AD2-8B9C-B5C3998C3B40")]
67 [Guid(
"E3B9ECED-7495-4151-9E00-7268749F5DD3")]
76 #region Schedule state awareness
158 #region Embedding of methods
200 [AttributeUsage(AttributeTargets.Property|AttributeTargets.Method)]
213 [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
233 [AttributeUsage(AttributeTargets.Assembly)]
255 [AttributeUsage(AttributeTargets.Class)]
289 public interface IPluginAdapter<out TPluginInterface> where TPluginInterface : class
387 public void AddPath(
string folderForAssemblies);
Classes and interfaces that are meant for plugins. The classes and interfaces below this namespace ar...
ScheduleState
Which stage?
@ Ended
After the last task finished or an error occurred, but before autosamplers are disconnected.
@ Validated
Validation was completed.
@ Starting
Before the first task is executed.
@ SamplersStopped
After all autosamplers have been stopped.
Implement this interface if you have messages for our run log.
Action< string > WriteToRunlog
Use this event to send output to the Run Control / Runlog page and, if applicable,...
Allows you to support runtime language switching just like Chronos does.
void UICultureChanged(System.Globalization.CultureInfo newCulture)
This method will be called when the current language in Chronos changes.
For future extension (categories, priorities...)
TraceWriteEventArgs(string someText)
Currently just takes some text which is written to the trace log.
virtual string TextToWrite
Text that should be written to the trace log.
Writes some text to the trace log.
EventHandler< TraceWriteEventArgs > TraceWrite
Chronos will subscribe to this event and log the text provided in the event args.
Information about the current state change.
string AbortReason
Contains the error message in case the schedule was aborted because of an error.
Guid PlanerID
To avoid confusion between different planners.
string PlanerName
If you need to identify the planer to the user, use this.
ScheduleState State
The state that was entered.
Currently starting schedule stage.
EventHandler< ScheduleStateEventArgs > ScheduleStateChanged
Notification about schedule state changes.
Implement this interface if you need to track the state of schedules.
IScheduleEvents ScheduleEvents
Hook up immediately or save this for later use.
Could be extended in the future if e.g. arguments should be passed to the method running task planer.
string Method
Full path to the method or a path relative to the embedding task's method.
Implement this interface if you want to run a method from within your task.
Func< MethodLaunchEventArgs, Task > CreatePlanerFromMethod
Call this function to create a task planer containing a single method from your code.
Set this attribute if changing its value in the method editor will result in a different list of prop...
Override the normal sort priority in the method editor.
SortPriorityAttribute(int pri)
Give the decorated element a sort priority.
int Priority
Higher means further down the list in the method editor.
Use this attribute if you want to expose the contents of your plugin assembly only after a license ch...
string CheckLicense()
Do the license check.
If this attribute is present, the respective class is not available in Chronos XT.
Decorate your class with this attribute if it formally looks like some plugin component,...
This can be called for a sample list worker or device that writes its own set of log files which shou...
IEnumerable< string > LogPaths
Provide full paths to each of your log files here.
Implement this interface with your device or sample list worker to get fine-grained control about sto...
Func< StopRunArgs, Task > StopRun
Callback function returning a task that completes once the schedule queue was stopped.
Generic way to access a plugin object that was wrapped by Chronos.
TPluginInterface Plugin
Get the inner, plugin defined part of the object.
Options for stopping the schedule/queue.
StopMode
Details how to stop the run.
@ NoNewJobs
Do not interrupt jobs that were already started.
@ Immediately
Stop as soon as possible.
bool RestartRemainingJobs
In case of a soft stop, should the unstarted jobs be scheduled for a later restart?
StopMode How
Specify how the run should be stopped.
bool RunErrorMethod
For immediate stop, try to run the error method first.
string Reason
Optional reason for the stop.
bool StopQueue
Do not start any other schedules after the current one was stopped.
Information about a column defined in a method.
string Token
Column token as used in the method.
string Name
Column name as defined in the method editor.
string StandardValue
The standard value (if any), as entered in the method editor.
IReadOnlyList< string > StandardItems
For columns that provide a list of possible values.
Allows loading assemblies from specific paths.
void AddPath(string folderForAssemblies)
Add a path to a folder where additional assemblies are located.
void ForbidRedirection(string assemblyBaseName)
If an assembly can't be found, Chronos usually tries to let your code find the required type in Chron...