Execution Status
Every operation reports its outcome on two nodes beside it: output/status-code for your program,
and output/status-text for a person.
Status codes
| Code | Meaning | When it happens |
|---|---|---|
|
Idle |
The operation has not run since the application started |
|
OK |
The operation completed. A search may still have found nothing - that is a normal result, not an error |
|
Busy |
Another operation of the same module was still running. Nothing was done; try again when it has finished |
|
Invalid input |
An input value cannot be used - a required node left empty, an unknown match mode, an image address pointing at this application itself, or a directory path that is absolute or points outside the configuration directory |
|
Image read failed |
The image node at the given address is missing, empty, inconsistent, or uses an unsupported pixel format. Check that the camera application is running and has captured an image |
|
Source not found |
The template directory or the template file is missing or unreadable. Check the name against
|
|
Invalid crop region |
The region of interest does not fit inside the image. The message names the actual image size |
|
Write failed |
A file could not be written - usually a permission problem or a full disk |
|
Algorithm failed |
The matching itself failed |
|
Publish failed |
The result could not be written back to the Data Layer |
|
Module not found |
The named module does not exist. Check |
|
Module already exists |
A module with that name is already there |
|
Licence unavailable |
No licence covers the module. See Module Management |
These codes are the finders' own execution status, not the module status codes of the Cam Driver or
AI Object Matching: -5 here means an invalid crop region. See
Execution status of the finders.
|
These numbers are part of the application’s interface. New codes may be added in later releases, but existing ones never change meaning, so logic written against them keeps working after an update. This is also why checking the sign is the more robust test: |
Which operation reports which
| Operation | Possible codes |
|---|---|
Finding a template |
|
Creating a template |
|
|
|
Status text
output/status-text always starts with ok: or error: and gives the reason in words. It is
written at the same time as the status code, so both always agree.
Each operation has its own pair of nodes, and they keep their values until that operation runs again. A failed template creation therefore does not disturb the result of the last search.