CommandsΒΆ

The item /Execute at the root tree level provides a flexible interface for the execution of predefined library functions.

Note

You might want to look at the Guides section to see some C++ code fragments explaining how to perform basic tasks.

To execute a command you might first need to write parameters into the /Execute/Default/Parameters node. Then you can start the execution by writing the command name into the /Execute/Default/Command node. After the command has been executed, the Command subnode will be reset to Null. You can thus wait for the execution to complete by waiting for the Command node to become Null again. If the execution was not successful, the command will leave an ErrorSymbol and ErrorText node under the Result subnode. Some commands might also return result values, these will be placed under the Result node. The exact format of the returned result is laid out in the description of the corresponding command.

Additional Execution Nodes for Parallel Command Execution

When you need to run multiple commands in parallel you can create more execution nodes beside the /Execute/Default node. Each new subnode under /Execute can be used to run any command. Commands running in different subnodes of /Execute will be executed independently of each other in separate threads. The creation of new execution nodes is automatically done when using the NxLibCommand class by specifying an execution node name. When no node name is given in the NxLibCommand constructor the command will use the Default execution node. When using non object oriented programming new execution nodes can simply be created by writing to them or one of their subnodes.

Note

When using multiple execution nodes each command is allowed to use up to Threads parallel threads. Running multiple computationally intensive commands like ComputeDisparityMap in parallel might therefore use more threads than CPU cores are available. This will result in decreased overall performance. You should then use the generic Threads parameter on each command execution to limit the thread count for each command individually.

Common Error Symbols

CommandUnknown

Cause: The given command is not a valid command name.

Solution: Specify a valid command name. Command names are also case sensitive.

ParametersInvalid

Cause: The combination of parameters given is not allowed for the executed command.

Solution: Refer to the description of the comands parameters to find out about accepted combinations and values.

OperationCanceled

The command was interupted by the execution of the Break command.