Alternative View Point Capability
C Reference » Production Nodes Functionality » Generator

## Functions

XN_C_API XnBool XN_C_DECL | xnIsViewPointSupported (XnNodeHandle hInstance, XnNodeHandle hOther)
XN_C_API XnStatus XN_C_DECL | xnSetViewPoint (XnNodeHandle hInstance, XnNodeHandle hOther)
XN_C_API XnStatus XN_C_DECL | xnResetViewPoint (XnNodeHandle hInstance)
XN_C_API XnBool XN_C_DECL | xnIsViewPointAs (XnNodeHandle hInstance, XnNodeHandle hOther)
XN_C_API XnStatus XN_C_DECL | xnRegisterToViewPointChange (XnNodeHandle hInstance, XnStateChangedHandler handler, void *pCookie, XnCallbackHandle *phCallback)
XN_C_API void XN_C_DECL | xnUnregisterFromViewPointChange (XnNodeHandle hInstance, XnCallbackHandle hCallback)

## Detailed Description

The Alternative View Point capability (XN_CAPABILITY_ALTERNATIVE_VIEW_POINT) allows a Generator to transform its data to appear as if the sensor is placed in another location. For example, when more than one sensor is active (or one sensor that produces several outputs coming from close locations, yet not the same one), one sensor can change its data to appear as if coming from the location of the other sensor, so that both data buffers represent the same (for example depth and image maps, where the same coordinates in the map represent the same location is the scene).

## Function Documentation

## xnIsViewPointAs()

XN_C_API XnBool XN_C_DECL xnIsViewPointAs | ( | XnNodeHandle | hInstance,
|  | XnNodeHandle | hOther )

Checks if current view point is as if coming from the other node view point.

Parameters

  hInstance | [in] A handle to the instance.
  hOther | [in] The view point to be checked.

## xnIsViewPointSupported()

XN_C_API XnBool XN_C_DECL xnIsViewPointSupported | ( | XnNodeHandle | hInstance,
|  | XnNodeHandle | hOther )

Checks if this generator can change its output to look like it was taken from a different location, represented by another generator.

Parameters

  hInstance | [in] A handle to the instance.
  hOther | [in] The view point to be checked.

Returns
  TRUE if view point is supported, FALSE otherwise.

## xnRegisterToViewPointChange()

XN_C_API XnStatus XN_C_DECL xnRegisterToViewPointChange | ( | XnNodeHandle | hInstance,
|  | XnStateChangedHandler | handler,
|  | void * | pCookie,
|  | XnCallbackHandle * | phCallback )

Registers a callback function to view point changes.

Parameters

  hInstance | [in] A handle to the instance.
  handler | [in] A pointer to a function that will be called when view point changes.
  pCookie | [in] A user cookie that will be passed to the callback function.
  phCallback | [out] Optional. Will be filled with a handle to be passed to xnUnregisterFromViewPointChange().

## xnResetViewPoint()

XN_C_API XnStatus XN_C_DECL xnResetViewPoint | ( | XnNodeHandle | hInstance | ) |

Sets the view point of this generator to its normal one.

Parameters

  hInstance | [in] A handle to the instance.

## xnSetViewPoint()

XN_C_API XnStatus XN_C_DECL xnSetViewPoint | ( | XnNodeHandle | hInstance,
|  | XnNodeHandle | hOther )

Sets the view point of this generator to look like as if placed at another generator location.

Parameters

  hInstance | [in] A handle to the instance.
  hOther | [in] The view point to be set.

## xnUnregisterFromViewPointChange()

XN_C_API void XN_C_DECL xnUnregisterFromViewPointChange | ( | XnNodeHandle | hInstance,
|  | XnCallbackHandle | hCallback )

Unregisters a callback function which was registered using xnRegisterToViewPointChange().

Parameters

  hInstance | [in] A handle to the instance.
  hCallback | [in] The handle to the callback returned from xnRegisterToViewPointChange().