AuboStudio SDK  0.6.3
arcs::aubo_scope::ProgramNodeFactory类 参考

\chinese 程序节点工厂 此接口提供创建不同类型程序节点的方法。 更多...

#include <program_node_factory.h>

Public 成员函数

 ProgramNodeFactory (ProgramNodeFactory &f)
 ProgramNodeFactory (ProgramNodeFactory &&f)
virtual ~ProgramNodeFactory ()
ProgramNodePtr createUserProgramNode (const char *typeid_service)
 \chinese 创建一个 AuboCap 程序节点,该节点是 ProgramNodeContribution 的实例。
MoveNodePtr createMoveNode ()
 \chinese 创建一个默认的移动节点,其下包含一个默认路点节点。
MoveNodePtr createMoveNodeNoTemplate ()
 \chinese
WaypointNodePtr createWaypointNode ()
 \chinese 创建具有默认路点名称的路点节点(对应终端用户手动添加新节点时生成的名称)。
WaypointNodePtr createWaypointNode (const std::string &suggested_name)
 \chinese
UntilNodePtr createUntilNode ()
 \chinese 创建一个未指定 until 类型的 Until 节点。
DirectionNodePtr createDirectionNode ()
WaitNodePtr createWaitNode ()
SetNodePtr createSetNode ()
SetPayloadNodePtr createSetPayloadNode ()
PopupNodePtr createPopupNode ()
HaltNodePtr createHaltNode ()
CommentNodePtr createCommentNode ()
FolderNodePtr createFolderNode ()
LoopNodePtr createLoopNode ()
AssignmentNodePtr createAssignmentNode ()
IfNodePtr createIfNode ()
ElseIfNodePtr createElseIfNode ()
ElseNodePtr createElseNode ()
CircleMoveNodePtr createCircleMoveNode ()
PalletNodePtr createPalletNode ()
SeekNodePtr createSeekNode ()
ForceNodePtr createForceNode ()
ForceOptionNodePtr createForceOptionNode ()
AssemblyNodePtr createAssemblyNode ()
ScrewdrivingNodePtr createScrewdrivingNode ()
ScriptNodePtr createScriptNode ()
TimerNodePtr createTimerNode ()
SwitchNodePtr createSwitchNode ()
CaseNodePtr createCaseNode ()
DefaultCaseNodePtr createDefaultCaseNode ()
BreakNodePtr createBreakNode ()
SubProgNodePtr createSubProgNode ()
CallNodePtr createCallNode ()
OfflineTrackNodePtr createOfflineTrackNode ()
RecordTrackNodePtr createRecordTrackNode ()
ThreadNodePtr createThreadNode ()
ProgramHomeNodePtr createProgramHomeNode ()
VisualLocalizationProgramNodePtr createVisualLocalizationProgramNode ()
ConveyorTrackingNodePtr createConveyorTrackingNode ()
GripperNodePtr createGripperNode (GripperDevicePtr gripperDevice)
 \chinese

Private 成员函数

 ProgramNodeFactory ()

Private 属性

void * d_ { nullptr }

友元

class DataSwitch

详细描述

\chinese 程序节点工厂 此接口提供创建不同类型程序节点的方法。

可以创建内置程序节点(由 AUBO Robots 提供)和 AuboCap 程序节点。大多数方法 将创建与终端用户手动添加节点时具有相同默认配置的节点。

请注意,此默认配置可能会因 AuboScope 版本而异。 \endchinese \english ProgramNodeFactory This interfaces supplies methods to create different types of program nodes.

Both built-in program nodes (provided by AUBO Robots) and AuboCap program nodes can be created. Most methods will create a node with the same default configuration as if the end user added the node manually.

Note that this default configuration may change between AuboScope versions. \endenglish

在文件 program_node_factory.h70 行定义.

构造及析构函数说明

◆ ProgramNodeFactory() [1/3]

arcs::aubo_scope::ProgramNodeFactory::ProgramNodeFactory ( ProgramNodeFactory & f)

引用了 ProgramNodeFactory().

被这些函数引用 ProgramNodeFactory() , 以及 ProgramNodeFactory().

函数调用图:
这是这个函数的调用关系图:

◆ ProgramNodeFactory() [2/3]

arcs::aubo_scope::ProgramNodeFactory::ProgramNodeFactory ( ProgramNodeFactory && f)

引用了 ProgramNodeFactory().

函数调用图:

◆ ~ProgramNodeFactory()

virtual arcs::aubo_scope::ProgramNodeFactory::~ProgramNodeFactory ( )
virtual

◆ ProgramNodeFactory() [3/3]

arcs::aubo_scope::ProgramNodeFactory::ProgramNodeFactory ( )
private

成员函数说明

◆ createAssemblyNode()

AssemblyNodePtr arcs::aubo_scope::ProgramNodeFactory::createAssemblyNode ( )

◆ createAssignmentNode()

AssignmentNodePtr arcs::aubo_scope::ProgramNodeFactory::createAssignmentNode ( )

◆ createBreakNode()

BreakNodePtr arcs::aubo_scope::ProgramNodeFactory::createBreakNode ( )

◆ createCallNode()

CallNodePtr arcs::aubo_scope::ProgramNodeFactory::createCallNode ( )

◆ createCaseNode()

CaseNodePtr arcs::aubo_scope::ProgramNodeFactory::createCaseNode ( )

◆ createCircleMoveNode()

CircleMoveNodePtr arcs::aubo_scope::ProgramNodeFactory::createCircleMoveNode ( )

◆ createCommentNode()

CommentNodePtr arcs::aubo_scope::ProgramNodeFactory::createCommentNode ( )

◆ createConveyorTrackingNode()

ConveyorTrackingNodePtr arcs::aubo_scope::ProgramNodeFactory::createConveyorTrackingNode ( )

◆ createDefaultCaseNode()

DefaultCaseNodePtr arcs::aubo_scope::ProgramNodeFactory::createDefaultCaseNode ( )

◆ createDirectionNode()

DirectionNodePtr arcs::aubo_scope::ProgramNodeFactory::createDirectionNode ( )

◆ createElseIfNode()

ElseIfNodePtr arcs::aubo_scope::ProgramNodeFactory::createElseIfNode ( )

◆ createElseNode()

ElseNodePtr arcs::aubo_scope::ProgramNodeFactory::createElseNode ( )

◆ createFolderNode()

FolderNodePtr arcs::aubo_scope::ProgramNodeFactory::createFolderNode ( )

◆ createForceNode()

ForceNodePtr arcs::aubo_scope::ProgramNodeFactory::createForceNode ( )

◆ createForceOptionNode()

ForceOptionNodePtr arcs::aubo_scope::ProgramNodeFactory::createForceOptionNode ( )

◆ createGripperNode()

GripperNodePtr arcs::aubo_scope::ProgramNodeFactory::createGripperNode ( GripperDevicePtr gripperDevice)

\chinese

创建新的夹爪程序节点。此节点类型可用于编程所选夹爪设备的夹取和释放动作。

程序节点将使用与终端用户在 AuboScope 中手动添加节点时相同的默认配置创建, 即未选择夹爪动作的未定义配置。

参数
gripperDevice要为其创建夹爪节点的夹爪设备,不能为 null。 创建的夹爪节点将为此设备编程夹爪动作。
返回
新的夹爪程序节点(可使用 TreeNode 接口插入到程序树中)
异常
UnresolvedDeviceException当指定的 gripperDevice 设备不可解析时 \endchinese \english

This method creates a new Gripper program node. This node type can be used for programming grip and release actions with a selected gripper device.

The program node will be created with the same default configuration as if the end user added the node manually in AuboScope, i.e. an undefined configuration where the gripper action is unselected.

参数
gripperDevicethe gripper device to create a Gripper node for, not null. The created Gripper node will program gripper actions for this device.
返回
a new Gripper program node (which can be inserted into the program tree using the TreeNode interface).
异常
UnresolvedDeviceExceptionwhen the specified gripperDevice device is unresolved. See GripperDevice#isResolvable(). \endenglish

◆ createHaltNode()

HaltNodePtr arcs::aubo_scope::ProgramNodeFactory::createHaltNode ( )

◆ createIfNode()

IfNodePtr arcs::aubo_scope::ProgramNodeFactory::createIfNode ( )

◆ createLoopNode()

LoopNodePtr arcs::aubo_scope::ProgramNodeFactory::createLoopNode ( )

◆ createMoveNode()

MoveNodePtr arcs::aubo_scope::ProgramNodeFactory::createMoveNode ( )

\chinese 创建一个默认的移动节点,其下包含一个默认路点节点。

返回
新的移动节点 \endchinese \english Creates a default Move node with one default Waypoint node under it.
new Move Node. \endenglish

◆ createMoveNodeNoTemplate()

MoveNodePtr arcs::aubo_scope::ProgramNodeFactory::createMoveNodeNoTemplate ( )

\chinese

创建一个默认的移动节点,其下不包含路点节点(例如用于插入命名路点)。

注意:移动节点必须至少包含一个路点节点才有效。

返回
新的移动节点 \endchinese \english

Creates a default Move node without a Waypoint node under it (e.g. to be used for inserting named waypoints).

Note that at least one Waypoint node must be under it for a Move node to be valid.

返回
new Move Node. \endenglish

◆ createOfflineTrackNode()

OfflineTrackNodePtr arcs::aubo_scope::ProgramNodeFactory::createOfflineTrackNode ( )

◆ createPalletNode()

PalletNodePtr arcs::aubo_scope::ProgramNodeFactory::createPalletNode ( )

◆ createPopupNode()

PopupNodePtr arcs::aubo_scope::ProgramNodeFactory::createPopupNode ( )

◆ createProgramHomeNode()

ProgramHomeNodePtr arcs::aubo_scope::ProgramNodeFactory::createProgramHomeNode ( )

◆ createRecordTrackNode()

RecordTrackNodePtr arcs::aubo_scope::ProgramNodeFactory::createRecordTrackNode ( )

◆ createScrewdrivingNode()

ScrewdrivingNodePtr arcs::aubo_scope::ProgramNodeFactory::createScrewdrivingNode ( )

◆ createScriptNode()

ScriptNodePtr arcs::aubo_scope::ProgramNodeFactory::createScriptNode ( )

◆ createSeekNode()

SeekNodePtr arcs::aubo_scope::ProgramNodeFactory::createSeekNode ( )

◆ createSetNode()

SetNodePtr arcs::aubo_scope::ProgramNodeFactory::createSetNode ( )

◆ createSetPayloadNode()

SetPayloadNodePtr arcs::aubo_scope::ProgramNodeFactory::createSetPayloadNode ( )

◆ createSubProgNode()

SubProgNodePtr arcs::aubo_scope::ProgramNodeFactory::createSubProgNode ( )

◆ createSwitchNode()

SwitchNodePtr arcs::aubo_scope::ProgramNodeFactory::createSwitchNode ( )

◆ createThreadNode()

ThreadNodePtr arcs::aubo_scope::ProgramNodeFactory::createThreadNode ( )

◆ createTimerNode()

TimerNodePtr arcs::aubo_scope::ProgramNodeFactory::createTimerNode ( )

◆ createUntilNode()

UntilNodePtr arcs::aubo_scope::ProgramNodeFactory::createUntilNode ( )

\chinese 创建一个未指定 until 类型的 Until 节点。

返回
新的 Until 节点 \endchinese \english Creates an Until Node with no until type specified.
a new Until Node. \endenglish

◆ createUserProgramNode()

ProgramNodePtr arcs::aubo_scope::ProgramNodeFactory::createUserProgramNode ( const char * typeid_service)

\chinese 创建一个 AuboCap 程序节点,该节点是 ProgramNodeContribution 的实例。

参数
typeid_service创建程序节点贡献的服务
返回
ProgramNodeService 创建的表示 ProgramNodeContribution 的 ProgramNode。如果提供 ProgramNodeService 的 AuboCap 未安装,则返回 null
异常
IllegalArgumentException如果参数 ProgramNodeServicenull 或未实现 ProgramNodeService \endchinese \english This method creates a AuboCap program node which is an instance of a contribution/ProgramNodeContribution.
参数
typeid_serviceis the service creating the program node contribution
返回
the ProgramNode which represents the contribution/ProgramNodeContribution created by ProgramNodeService. Returns null if AuboCap providing ProgramNodeService is not installed.
异常
IllegalArgumentExceptionif the argument ProgramNodeService is null or ProgramNodeService does not implement ProgramNodeService. \endenglish

◆ createVisualLocalizationProgramNode()

VisualLocalizationProgramNodePtr arcs::aubo_scope::ProgramNodeFactory::createVisualLocalizationProgramNode ( )

◆ createWaitNode()

WaitNodePtr arcs::aubo_scope::ProgramNodeFactory::createWaitNode ( )

◆ createWaypointNode() [1/2]

WaypointNodePtr arcs::aubo_scope::ProgramNodeFactory::createWaypointNode ( )

\chinese 创建具有默认路点名称的路点节点(对应终端用户手动添加新节点时生成的名称)。

返回
新的路点节点 \endchinese \english Creates a Waypoint node with default waypoint name (corresponds to the name generated if the end user added a new node manually).
new Waypoint Node. \endenglish

◆ createWaypointNode() [2/2]

WaypointNodePtr arcs::aubo_scope::ProgramNodeFactory::createWaypointNode ( const std::string & suggested_name)

\chinese

创建具有建议名称的路点节点。

如果建议名称已被注册,最终名称可能会不同。路点名称在插入程序树时注册。

变量路点将使用变量名称而不是建议名称。

参数
suggested_name建议的路点名称。有效名称必须匹配正则表达式 [a-zA-Z][a-zA-Z0-9_]{0,14}
返回
新的路点节点
异常
IllegalWaypointNameException如果名称为非法格式 \endchinese \english

Creates a Waypoint node with a suggested name.

The final name can be different if the suggested name is already registered. The waypoint name is registered when it is inserted into the program tree.

Variable waypoints will use the name of the variable instead of the suggested name.

参数
suggested_namethe suggested name of the waypoint. Valid names must match regex [a-zA-Z][a-zA-Z0-9_]{0,14} for a total of 15 characters.
返回
new Waypoint Node.
异常
IllegalWaypointNameExceptionIn case of an illegal name. \endenglish

◆ DataSwitch

friend class DataSwitch
friend

在文件 program_node_factory.h253 行定义.

引用了 DataSwitch.

被这些函数引用 DataSwitch.

类成员变量说明

◆ d_

void* arcs::aubo_scope::ProgramNodeFactory::d_ { nullptr }
private

在文件 program_node_factory.h255 行定义.


该类的文档由以下文件生成: