Class Code
- Namespace
- DuetControlServer.Commands
- Assembly
- DuetControlServer.dll
Implementation of the Code command
public sealed class Code : Code, IConnectionCommand
- Inheritance
-
Code
- Implements
- Inherited Members
Constructors
Code(CodeProcessor, Expressions, ICodeHandler, ICodeHandler, ICodeHandler, ICodeHandler, IHostApplicationLifetime, LinkInterface, ILogger<Code>, IOptions<Settings>)
Constructor of a new code
public Code(CodeProcessor codeProcessor, Expressions expressions, ICodeHandler gCodes, ICodeHandler mCodes, ICodeHandler tCodes, ICodeHandler keywords, IHostApplicationLifetime lifetime, LinkInterface linkInterface, ILogger<Code> logger, IOptions<Settings> settings)
Parameters
codeProcessorCodeProcessorCode processor
expressionsExpressionsMeta G-code expression parser
gCodesICodeHandlerG-code handler
mCodesICodeHandlerM-code handler
tCodesICodeHandlerT-code handler
keywordsICodeHandlerKeyword handler
lifetimeIHostApplicationLifetimeHost application lifetime
linkInterfaceLinkInterfaceLink interface
loggerILogger<Code>Logger instance
settingsIOptions<Settings>Settings
Code(string, CodeProcessor, Expressions, ICodeHandler, ICodeHandler, ICodeHandler, ICodeHandler, IHostApplicationLifetime, LinkInterface, ILogger<Code>, IOptions<Settings>)
Constructor of a new code which also parses the given text-based G/M/T-code
public Code(string code, CodeProcessor codeProcessor, Expressions expressions, ICodeHandler gCodes, ICodeHandler mCodes, ICodeHandler tCodes, ICodeHandler keywords, IHostApplicationLifetime lifetime, LinkInterface linkInterface, ILogger<Code> logger, IOptions<Settings> settings)
Parameters
codestringText-based G/M/T-code
codeProcessorCodeProcessorCode processor
expressionsExpressionsMeta G-code expression parser
gCodesICodeHandlerG-code handler
mCodesICodeHandlerM-code handler
tCodesICodeHandlerT-code handler
keywordsICodeHandlerKeyword handler
lifetimeIHostApplicationLifetimeHost application lifetime
linkInterfaceLinkInterfaceLink interface
loggerILogger<Code>Logger instance
settingsIOptions<Settings>Settings
Properties
Connection
Source connection of this command
public Connection? Connection { get; set; }
Property Value
Methods
ExecuteAsync(CancellationToken)
Run an arbitrary G/M/T-code and wait for it to finish or to be enqueued if it is asynchronous
public override Task<Message?> ExecuteAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationTokenOptional cancellation token
Returns
Exceptions
- OperationCanceledException
Code has been cancelled
Reset()
Resets more Code fields
public override void Reset()
SetCancelled()
Set this code as cancelled
public void SetCancelled()
SetException(Exception)
Set an exception for this code
public void SetException(Exception e)
Parameters
eExceptionException to set
SetFinished()
Set this code as complete
public void SetFinished()