Microsoft DirectX 9.0


The GetCurrentAngle method retrieves the number of available angles in the current angle block and the currently selected angle number.


HRESULT GetCurrentAngle(
  ULONG *pulAnglesAvailable,
  ULONG *pulCurrentAngle



[out] Pointer to a variable of type ULONG that receives the number of available angles. There are up to nine angles in an angle block, numbered 1 through 9. If the value equals 1, then the DVD Navigator is not in an angle block.


[out] Pointer to a variable of type ULONG that receives the current angle number.

Return Values

Returns one of the following HRESULT values.

Return code Description
S_OK Success.
E_POINTER Invalid argument.
VFW_E_DVD_INVALIDDOMAIN DVD Navigator is not initialized or not in a valid domain.


Note that angle and menu button indexes are 1-based, while audio and subpicture stream indexes are 0-based. When the DVD Navigator is about to enter an angle block, it sends the application an EC_DVD_ANGLES_AVAILABLE event notification with the lParam set to 1. Applications will typically call GetCurrentAngle and IDvdControl2::SelectAngle within their event handler for EC_DVD_ANGLES_AVAILABLE.

This method is demonstrated in the DVDSample application in CAngleDlg::MakeAngleList.

See Also