Class TechnologistHelper
Inheritance
TechnologistHelper
Assembly: CAMIPC.DotnetHelper.dll
Syntax
public static class TechnologistHelper
Methods
Calculate the toolpath of every operation of the project. Blocks until the
calculation is over.
Runs in a worker thread of ENCY, not in its main one: an operation that makes machine
CLData waits inside the calculation for the frames of an external application, and on
the main thread that wait would block the very dispatch those frames arrive on.
Declaration
public static void CalculateAllOperationsToolpath(this ComWrapper<ICamIpcTechnologist> technologistCom, bool calcLinksBetweenOperations)
Parameters
Declaration
public static void CalculateAllOperationsToolpathAsync(this ComWrapper<ICamIpcTechnologist> technologistCom, bool calcLinksBetweenOperations)
Parameters
Calculate the toolpath of every operation of the project and wait for the end of the
calculation, keeping the IPC connection free all the while.
This is the blocking call an application should use when it takes part in the
calculation itself: the work is started asynchronously, and the wait is a poll of
IsBusy(ComWrapper<ICamIpcApplication>) - which counts the asynchronous work ENCY has
taken on and not finished yet.
A calculation that CRASHED throws here rather than passing for a success. Note what that
does and does not cover: ENCY reports an error only when the calculation raised. An
operation that simply did not compute - no geometry, no tool, out of limits - is marked
as failed inside the project and the calculation as a whole ends normally. So a call
that returned means "the calculation did not crash", NOT "the toolpath is there";
whether an operation produced anything has to be read off the operation itself.
The listener for verdicts is left exactly as it was found: started here only if the
application had not started it, and stopped again only in that case.
Declaration
public static void CalculateAllOperationsToolpathSync(this ComWrapper<ICamIpcTechnologist> technologistCom, ComWrapper<ICamIpcApplication> app, bool calcLinksBetweenOperations, int timeoutMs = 600000, int pollMs = 200)
Parameters
Exceptions
CopyOperation(ComWrapper<ICamIpcTechnologist>, string, string)
Copy the operation (with its sub-tree) inside the current technologist, inserting the copy
right after the specified operation. It is the same copy-paste the user does in the operations tree.
Pass an empty afterOperationId to insert the copy right after the source operation,
or the identifier of the root operation to make the copy the first one
Declaration
public static ComWrapper<ICamIpcTechOperation> CopyOperation(this ComWrapper<ICamIpcTechnologist> technologistCom, string sourceOperationId, string afterOperationId = "")
Parameters
Returns
CreateOperation(ComWrapper<ICamIpcTechnologist>, string, string, string)
Create new operation of the specified type
Declaration
public static ComWrapper<ICamIpcTechOperation> CreateOperation(this ComWrapper<ICamIpcTechnologist> technologistCom, string operationTypeId, string afterOperationId, string prototypeOperationId)
Parameters
Returns
EnumerateOperationTypes(ComWrapper<ICamIpcTechnologist>)
Lists all tech operation types in a technologist
Declaration
public static IEnumerable<ComWrapper<ICamIpcTechOperationType>> EnumerateOperationTypes(this ComWrapper<ICamIpcTechnologist> technologistCom)
Parameters
Returns
EnumerateOperations(ComWrapper<ICamIpcTechnologist>, TCamApiReorderingMode)
Lists all tech operations in a technologist
Declaration
public static IEnumerable<ComWrapper<ICamIpcTechOperation>> EnumerateOperations(this ComWrapper<ICamIpcTechnologist> technologistCom, TCamApiReorderingMode reorderingMode)
Parameters
Returns
ExportOperation(ComWrapper<ICamIpcTechnologist>, string, string)
Save the operation (with its sub-tree) to an .eop file, so it can later be imported with ImportOperation
Declaration
public static void ExportOperation(this ComWrapper<ICamIpcTechnologist> technologistCom, string operationId, string filePath)
Parameters
GetChannelOperations(ComWrapper<ICamIpcTechnologist>, int)
Declaration
public static IEnumerable<ComWrapper<ICamIpcTechOperation>> GetChannelOperations(this ComWrapper<ICamIpcTechnologist> technologistCom, int channelIndex)
Parameters
Returns
GetOperationById(ComWrapper<ICamIpcTechnologist>, string)
Find operation by its unique identifier (GUID)
Declaration
public static ComWrapper<ICamIpcTechOperation> GetOperationById(this ComWrapper<ICamIpcTechnologist> technologistCom, string operationId)
Parameters
Returns
GetOperations(ComWrapper<ICamIpcTechnologist>, TCamApiReorderingMode)
Iterator over the tech operations of a technologist
Declaration
public static ComWrapper<ICamIpcTechOperationIterator> GetOperations(this ComWrapper<ICamIpcTechnologist> technologistCom, TCamApiReorderingMode reorderingMode)
Parameters
Returns
ImportOperation(ComWrapper<ICamIpcTechnologist>, string, string)
Import operations from an .eop file, inserting them right after the specified operation.
Pass an empty afterOperationId to append them to the end of the technology tree.
Returns the identifiers of the inserted operations
Declaration
public static ComWrapper<IListString> ImportOperation(this ComWrapper<ICamIpcTechnologist> technologistCom, string filePath, string afterOperationId = "")
Parameters
Returns
MoveOperation(ComWrapper<ICamIpcTechnologist>, string, string)
Move the operation in the technology tree to the position right after the specified one.
Pass the identifier of the root operation to make the operation the first one.
To place the operation into a group, pass the identifier of the last operation inside that group
Declaration
public static void MoveOperation(this ComWrapper<ICamIpcTechnologist> technologistCom, string operationId, string afterOperationId)
Parameters
OperationCatalogList(ComWrapper<ICamIpcTechnologist>)
Operation catalogs of the "New operation" window
Declaration
public static ComWrapper<ICamIpcOperationCatalogList> OperationCatalogList(this ComWrapper<ICamIpcTechnologist> technologistCom)
Parameters
Returns
Drop the toolpath of every operation of the project
Declaration
public static void ResetAllOperationsToolpath(this ComWrapper<ICamIpcTechnologist> technologistCom)
Parameters
RootOperation(ComWrapper<ICamIpcTechnologist>)
Root operation of the technology tree
Declaration
public static ComWrapper<ICamIpcTechOperation> RootOperation(this ComWrapper<ICamIpcTechnologist> technologistCom)
Parameters
Returns