2.5.41 IDeckLinkStatus Interface

The IDeckLinkStatus interface allows querying of status information associated with a DeckLink device.

The DeckLink Status ID section lists the status information and associated identifiers that can be queried using this interface. An IDeckLinkStatus interface can be obtained from an IDeckLink interface using QueryInterface.

An application may be notified of changes to status information by subscribing to the bmdStatusChanged topic using the IDeckLinkNotification interface. See BMDNotifications for more information.

For an example demonstrating how status information can be queried and monitored, please see the StatusMonitor sample in the DeckLink SDK.

Related Interfaces

Interface

Interface ID

Description

IDeckLink

IID_IDeckLink

An IDeckLinkStatus object interface may be obtained from IDeckLink using QueryInterface

2.5.41.1 IDeckLinkStatus::GetFlag method

HRESULT IDeckLinkStatus::GetFlag(BMDDeckLinkStatusID statusID, Boolean *value);

The GetFlag method gets the current boolean value of a status associated with the given BMDDeckLinkStatusID.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • value – The boolean value corresponding to the statusID.

Return values:
  • E_INVALIDARG – There is no flag type status corresponding to the given BMDDeckLinkStatusID.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.2 IDeckLinkStatus::GetInt method

HRESULT IDeckLinkStatus::GetInt(BMDDeckLinkStatusID statusID, int64_t *value);

The GetInt method gets the current integer value of a status associated with the given BMDDeckLinkStatusID.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • value – The integer value corresponding to the statusID.

Return values:
  • E_INVALIDARG – There is no integer type status corresponding to the given BMDDeckLinkStatusID.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.3 IDeckLinkStatus::GetFloat method

HRESULT IDeckLinkStatus::GetFloat(BMDDeckLinkStatusID statusID, double *value);

The GetFloat method gets the current double value of a status associated with the given BMDDeckLinkStatusID.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • value – The double value corresponding to the statusID.

Return values:
  • E_INVALIDARG – There is no float type status corresponding to the given BMDDeckLinkStatusID.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.4 IDeckLinkStatus::GetString method

HRESULT IDeckLinkStatus::GetString(BMDDeckLinkStatusID statusID, string *value);

The GetString method gets the current string value of a status associated with the given BMDDeckLinkStatusID.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • value – The string value corresponding to the statusID. This allocated string must be freed by the caller when no longer required.

Return values:
  • E_INVALIDARG – There is no flag type status corresponding to the given BMDDeckLinkStatusID.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.5 IDeckLinkStatus::GetBytes method

HRESULT IDeckLinkStatus::GetBytes(BMDDeckLinkStatusID statusID, void *buffer, uint32_t *bufferSize);

The GetBytes method gets the current byte array value of a status associated with the given BMDDeckLinkStatusID.

Note

If the size of the buffer is not sufficient, bufferSize will be updated to the required buffer size.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • buffer – The buffer in which to return the status data, or NULL to determine the required buffer size.

  • bufferSize – The size of the provided buffer. Will be updated to the number of bytes returned.

Return values:
  • E_INVALIDARG – There is no byte array type status corresponding to the given BMDDeckLinkStatusID.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.6 IDeckLinkStatus::GetInterface method

HRESULT IDeckLinkStatus::GetInterface(BMDDeckLinkStatusID statusID, void **iface);

The GetInterface method gets an interface representation for a given BMDDeckLinkStatusID.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • iface – The interface corresponding to the statusID. The object must be released by the caller when no longer required.

Return values:
  • E_INVALIDARG – There is no interface type status corresponding to the given BMDDeckLinkStatusID.

  • E_POINTER – The interface parameter is invalid.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_FALSE – Success but interface not available

  • S_OK – Success

2.5.41.7 IDeckLinkStatus::GetFlagWithParam method

HRESULT IDeckLinkStatus::GetFlagWithParam(BMDDeckLinkStatusID statusID, uint64_t param, Boolean *value);

The GetFlagWithParam method gets the current boolean value of a status associated with the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • param – The parameter for the associated statusID.

  • value – The boolean value corresponding to the statusID.

Return values:
  • E_INVALIDARG – There is no flag type status corresponding to the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.8 IDeckLinkStatus::GetIntWithParam method

HRESULT IDeckLinkStatus::GetIntWithParam(BMDDeckLinkStatusID statusID, uint64_t param, int64_t *value);

The GetIntWithParam method gets the current integer value of a status associated with the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • param – The parameter for the associated statusID.

  • value – The integer value corresponding to the statusID.

Return values:
  • E_INVALIDARG – There is no integer type status corresponding to the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.9 IDeckLinkStatus::GetFloatWithParam method

HRESULT IDeckLinkStatus::GetFloatWithParam(BMDDeckLinkStatusID statusID, uint64_t param, double *value);

The GetFloatWithParam method gets the current double value of a status associated with the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • param – The parameter for the associated statusID.

  • value – The double value corresponding to the statusID.

Return values:
  • E_INVALIDARG – There is no float type status corresponding to the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.10 IDeckLinkStatus::GetStringWithParam method

HRESULT IDeckLinkStatus::GetStringWithParam(BMDDeckLinkStatusID statusID, uint64_t param, string *value);

The GetStringWithParam method gets the current string value of a status associated with the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • param – The parameter for the associated statusID.

  • value – The string value corresponding to the statusID. This allocated string must be freed by the caller when no longer required.

Return values:
  • E_INVALIDARG – There is no flag type status corresponding to the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success

2.5.41.11 IDeckLinkStatus::GetBytesWithParam method

HRESULT IDeckLinkStatus::GetBytesWithParam(BMDDeckLinkStatusID statusID, uint64_t param, void *buffer, uint32_t *bufferSize);

The GetBytesWithParam method gets the current byte array value of a status associated with the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

Note

If the size of the buffer is not sufficient, bufferSize will be updated to the required buffer size.

Parameters:
  • statusID – The BMDDeckLinkStatusID of the status information item.

  • param – The parameter for the associated statusID.

  • buffer – The buffer in which to return the status data, or NULL to determine the required buffer size.

  • bufferSize – The size of the provided buffer. Will be updated to the number of bytes returned.

Return values:
  • E_INVALIDARG – There is no byte array type status corresponding to the given BMDDeckLinkStatusID and 64-bit unsigned integer parameter.

  • E_NOTIMPL – The request is correct however it is not supported by the DeckLink hardware.

  • E_FAIL – Failure

  • S_OK – Success