-
-
Notifications
You must be signed in to change notification settings - Fork 340
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
camera: action API support #468
base: main
Are you sure you want to change the base?
Conversation
3b331cf
to
7df8471
Compare
Without implementation for now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not fond of the current API. It is too low level.
May be a better approach would be to configure the action with just giving a set of devices. We may be able to automatically define the needed keys, and have a *_full
version with user given key values. I guess the broadcast address can be also found automatically, or set explicetely in the *_full
API version.
if (error == NULL) | ||
arv_camera_set_string (camera, "ActionSelector", command_name, &local_error); | ||
if (error == NULL) | ||
arv_camera_set_integer (camera, "ActionDeviceKey", device_key, &local_error); | ||
if (error == NULL) | ||
arv_camera_set_integer (camera, "ActionGroupKey", group_key, &local_error); | ||
if (error == NULL) | ||
arv_camera_set_integer (camera, "ActionGroupMask", group_key, &local_error); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should test local_error, not error
arv_gv_device_issue_scheduled_action_command (guint32 device_key, guint32 group_key, guint32 group_mask, | ||
guint64 timestamp_ns, GInetAddress *broadcast_address, | ||
GInetAddress **inet_addresses, guint *n_acknowledges, | ||
GError **error) | ||
{ | ||
return FALSE; | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO: actual implementation
gboolean arv_gv_device_issue_scheduled_action_command (guint32 device_key, guint32 group_key, guint32 group_mask, | ||
guint64 timestamp_ns, GInetAddress *broadcast_address, | ||
GInetAddress **inet_addresses, guint *n_acknowledges, | ||
GError **error); | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO: actual implementation
* @inet_addresses: (out): a placeholder for an array of acknowledge IP adresses | ||
* @n_acknowledges: (out): a placeholder for the number of ackowledges |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
API: we should handle devices by using #ArvDevice instances here, not by their IP addresses.
No description provided.