summaryrefslogtreecommitdiffstatsci
path: root/src/vkvg_context.c
diff options
context:
space:
mode:
authorMarco Rubin <20150305+Rubo3@users.noreply.github.com>2022-03-04 09:44:51 +0100
committerGitHub <noreply@github.com>2022-03-04 09:44:51 +0100
commite44131af24f0da8cd5c656d52012dcf6d519ef03 (patch)
tree40b9907265745ded3b3bd98d29cb00d1875d276d /src/vkvg_context.c
parentbec95371279ff65a3fecd5fda10464d91c311048 (diff)
Add vkvg_status_to_string (#99)
* Add vkvg_status_to_string definition * Remove unused status
Diffstat (limited to 'src/vkvg_context.c')
-rw-r--r--src/vkvg_context.c56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/vkvg_context.c b/src/vkvg_context.c
index 6e5d125..d9bce6a 100644
--- a/src/vkvg_context.c
+++ b/src/vkvg_context.c
@@ -1610,3 +1610,59 @@ VkvgSurface vkvg_get_target (VkvgContext ctx) {
return NULL;
return ctx->pSurf;
}
+
+/**
+ * vkvg_status_to_string:
+ * @status: a vkvg status
+ *
+ * Provides a human-readable description of a #vkvg_status_t.
+ *
+ * Returns: a string representation of the status
+ **/
+const char *
+vkvg_status_to_string (vkvg_status_t status) {
+ switch (status) {
+ case VKVG_STATUS_SUCCESS:
+ return "no error has occurred";
+ case VKVG_STATUS_NO_MEMORY:
+ return "out of memory";
+ case VKVG_STATUS_INVALID_RESTORE:
+ return "vkvg_restore() without matching vkvg_save()";
+ case VKVG_STATUS_NO_CURRENT_POINT:
+ return "no current point defined";
+ case VKVG_STATUS_INVALID_MATRIX:
+ return "invalid matrix (not invertible)";
+ case VKVG_STATUS_INVALID_STATUS:
+ return "invalid value for an input vkvg_status_t";
+ case VKVG_STATUS_INVALID_INDEX:
+ return "invalid index passed to getter";
+ case VKVG_STATUS_NULL_POINTER:
+ return "NULL pointer";
+ case VKVG_STATUS_WRITE_ERROR:
+ return "error while writing to output stream";
+ case VKVG_STATUS_PATTERN_TYPE_MISMATCH:
+ return "the pattern type is not appropriate for the operation";
+ case VKVG_STATUS_PATTERN_INVALID_GRADIENT:
+ return "the stops count is zero";
+ case VKVG_STATUS_INVALID_FORMAT:
+ return "invalid value for an input vkvg_format_t";
+ case VKVG_STATUS_FILE_NOT_FOUND:
+ return "file not found";
+ case VKVG_STATUS_INVALID_DASH:
+ return "invalid value for a dash setting";
+ case VKVG_STATUS_INVALID_RECT:
+ return "a rectangle has the height or width equal to 0";
+ case VKVG_STATUS_TIMEOUT:
+ return "waiting for a Vulkan operation to finish resulted in a fence timeout (5 seconds)";
+ case VKVG_STATUS_DEVICE_ERROR:
+ return "the initialization of the device resulted in an error";
+ case VKVG_STATUS_INVALID_IMAGE:
+ return "invalid image";
+ case VKVG_STATUS_INVALID_SURFACE:
+ return "invalid surface";
+ case VKVG_STATUS_INVALID_FONT:
+ return "unresolved font name";
+ default:
+ return "<unknown error status>";
+ }
+}