diff --git a/include/freerdp/primitives.h b/include/freerdp/primitives.h index f447ef50b..33935f3a4 100644 --- a/include/freerdp/primitives.h +++ b/include/freerdp/primitives.h @@ -276,6 +276,14 @@ typedef enum FREERDP_API const char* primitives_avc444_frame_type_str(avc444_frame_type type); + /** @brief convert a hint to a string + * + * @param hint the hint to stringify + * @return the string representation of the hint + * @since version 3.11.0 + */ + FREERDP_API const char* primtives_hint_str(primitive_hints hint); + #ifdef __cplusplus } #endif diff --git a/libfreerdp/primitives/primitives.c b/libfreerdp/primitives/primitives.c index 81eb5f632..b2b147afe 100644 --- a/libfreerdp/primitives/primitives.c +++ b/libfreerdp/primitives/primitives.c @@ -425,3 +425,20 @@ const char* primitives_avc444_frame_type_str(avc444_frame_type type) return "INVALID_FRAME_TYPE"; } } + +const char* primtives_hint_str(primitive_hints hint) +{ + switch (hint) + { + case PRIMITIVES_PURE_SOFT: + return "PRIMITIVES_PURE_SOFT"; + case PRIMITIVES_ONLY_CPU: + return "PRIMITIVES_ONLY_CPU"; + case PRIMITIVES_ONLY_GPU: + return "PRIMITIVES_ONLY_GPU"; + case PRIMITIVES_AUTODETECT: + return "PRIMITIVES_AUTODETECT"; + default: + return "PRIMITIVES_UNKNOWN"; + } +}