AXptz
ax_ptz_movement.h File Reference

The absolute, relative and continuous movements and its functions. More...

Go to the source code of this file.

Macros

#define AX_PTZ_MOVEMENT_NO_VALUE
 

Typedefs

typedef struct _AXPTZAbsoluteMovement AXPTZAbsoluteMovement
 An opaque structure for an absolute movement.
 
typedef struct _AXPTZRelativeMovement AXPTZRelativeMovement
 An opaque structure for a relative movement.
 
typedef struct _AXPTZContinuousMovement AXPTZContinuousMovement
 An opaque structure for a continuous movement.
 

Functions

AXPTZAbsoluteMovementax_ptz_absolute_movement_create (GError **error)
 Creates an absolute movement. More...
 
gboolean ax_ptz_absolute_movement_destroy (AXPTZAbsoluteMovement *movement, GError **error)
 Destroys an absolute movement. More...
 
gboolean ax_ptz_absolute_movement_set_pan_tilt_zoom (AXPTZAbsoluteMovement *movement, fixed_t pan_value, fixed_t tilt_value, fixed_t pan_tilt_speed, fixed_t zoom_value, fixed_t unused, GError **error)
 Sets the pan, tilt and zoom coordinates for an absolute movement. More...
 
AXPTZRelativeMovementax_ptz_relative_movement_create (GError **error)
 Creates a relative movement. More...
 
gboolean ax_ptz_relative_movement_destroy (AXPTZRelativeMovement *movement, GError **error)
 Destroys an relative movement. More...
 
gboolean ax_ptz_relative_movement_set_pan_tilt_zoom (AXPTZRelativeMovement *movement, fixed_t pan_value, fixed_t tilt_value, fixed_t pan_tilt_speed, fixed_t zoom_value, fixed_t unused, GError **error)
 Sets the pan, tilt and zoom coordinates for a relative movement. More...
 
AXPTZContinuousMovementax_ptz_continuous_movement_create (GError **error)
 Creates a continuous movement. More...
 
gboolean ax_ptz_continuous_movement_destroy (AXPTZContinuousMovement *movement, GError **error)
 Destroys an continuous movement. More...
 
gboolean ax_ptz_continuous_movement_set_pan_tilt_zoom (AXPTZContinuousMovement *movement, fixed_t pan_speed, fixed_t tilt_speed, fixed_t zoom_speed, fixed_t timeout, GError **error)
 Sets the pan, tilt and zoom speeds for a continuous movement. More...
 

Detailed Description

The absolute, relative and continuous movements and its functions.

Movements

AXPTZAbsoluteMovement, AXPTZRelativeMovement, AXPTZContinuousMovement are absolute, relative and continuous movements to be executed by AXPTZMovementHandler.

Function Documentation

◆ ax_ptz_absolute_movement_create()

AXPTZAbsoluteMovement* ax_ptz_absolute_movement_create ( GError **  error)

Creates an absolute movement.

Parameters
errorReturn location for a GError or NULL.
Returns
An absolute movement.
Examples:
axptzexample.c.

◆ ax_ptz_absolute_movement_destroy()

gboolean ax_ptz_absolute_movement_destroy ( AXPTZAbsoluteMovement movement,
GError **  error 
)

Destroys an absolute movement.

Parameters
movementThe absolute movement to destroy.
errorReturn location for a GError or NULL.
Returns
TRUE on success, FALSE on failure.
Examples:
axptzexample.c.

◆ ax_ptz_absolute_movement_set_pan_tilt_zoom()

gboolean ax_ptz_absolute_movement_set_pan_tilt_zoom ( AXPTZAbsoluteMovement movement,
fixed_t  pan_value,
fixed_t  tilt_value,
fixed_t  pan_tilt_speed,
fixed_t  zoom_value,
fixed_t  unused,
GError **  error 
)

Sets the pan, tilt and zoom coordinates for an absolute movement.

Parameters
movementAn absolute movement.
pan_valueThe pan coordinate to move to. Use AX_PTZ_MOVEMENT_NO_VALUE for no panning.
tilt_valueThe tilt coordinate to move to. Use AX_PTZ_MOVEMENT_NO_VALUE for no tilting.
pan_tilt_speedThe pan and tilt speed.
zoom_valueThe zoom coordinate to move to. Use AX_PTZ_MOVEMENT_NO_VALUE for no zooming.
unusedFuture use. Must be set to AX_PTZ_MOVEMENT_NO_VALUE.
errorReturn location for a GError or NULL.
Returns
TRUE on success, FALSE on failure.
Examples:
axptzexample.c.

◆ ax_ptz_relative_movement_create()

AXPTZRelativeMovement* ax_ptz_relative_movement_create ( GError **  error)

Creates a relative movement.

Parameters
errorReturn location for a GError or NULL.
Returns
A relative movement.
Examples:
axptzexample.c.

◆ ax_ptz_relative_movement_destroy()

gboolean ax_ptz_relative_movement_destroy ( AXPTZRelativeMovement movement,
GError **  error 
)

Destroys an relative movement.

Parameters
movementThe relative movement to destroy.
errorReturn location for a GError or NULL.
Returns
TRUE on success, FALSE on failure.
Examples:
axptzexample.c.

◆ ax_ptz_relative_movement_set_pan_tilt_zoom()

gboolean ax_ptz_relative_movement_set_pan_tilt_zoom ( AXPTZRelativeMovement movement,
fixed_t  pan_value,
fixed_t  tilt_value,
fixed_t  pan_tilt_speed,
fixed_t  zoom_value,
fixed_t  unused,
GError **  error 
)

Sets the pan, tilt and zoom coordinates for a relative movement.

Parameters
movementA relative movement.
pan_valueThe relative pan coordinate. Use 0 or AX_PTZ_MOVEMENT_NO_VALUE for no panning.
tilt_valueThe relative tilt coordinate. Use 0 or AX_PTZ_MOVEMENT_NO_VALUE for no tilting.
pan_tilt_speedThe pan and tilt speed.
zoom_valueThe relative zoom coordinate. Use 0 or AX_PTZ_MOVEMENT_NO_VALUE for no zooming.
unusedFuture use. Must be set to AX_PTZ_MOVEMENT_NO_VALUE.
errorReturn location for a GError or NULL.
Returns
TRUE on success, FALSE on failure.
Examples:
axptzexample.c.

◆ ax_ptz_continuous_movement_create()

AXPTZContinuousMovement* ax_ptz_continuous_movement_create ( GError **  error)

Creates a continuous movement.

Parameters
errorReturn location for a GError or NULL.
Returns
A continuous movement.
Examples:
axptzexample.c.

◆ ax_ptz_continuous_movement_destroy()

gboolean ax_ptz_continuous_movement_destroy ( AXPTZContinuousMovement movement,
GError **  error 
)

Destroys an continuous movement.

Parameters
movementThe continuous movement to destroy.
errorReturn location for a GError or NULL.
Returns
TRUE on success, FALSE on failure.
Examples:
axptzexample.c.

◆ ax_ptz_continuous_movement_set_pan_tilt_zoom()

gboolean ax_ptz_continuous_movement_set_pan_tilt_zoom ( AXPTZContinuousMovement movement,
fixed_t  pan_speed,
fixed_t  tilt_speed,
fixed_t  zoom_speed,
fixed_t  timeout,
GError **  error 
)

Sets the pan, tilt and zoom speeds for a continuous movement.

Parameters
movementA continuous movement.
pan_speedThe pan speed. Use 0 or AX_PTZ_MOVEMENT_NO_VALUE for no panning.
tilt_speedThe tilt speed. Use 0 or AX_PTZ_MOVEMENT_NO_VALUE for no tilting.
zoom_speedThe zoom speed. The zoom speed is unitless and cannot be set with ax_ptz_movement_handler_set_continuous_spaces. Use 0 or AX_PTZ_MOVEMENT_NO_VALUE for no zooming.
timeoutTimeout for the continuous movement. Unit: seconds.
errorReturn location for a GError or NULL.
Returns
TRUE on success, FALSE on failure.
Examples:
axptzexample.c.

References AX_PTZ_MOVEMENT_PAN_TILT_UNITLESS.