summaryrefslogtreecommitdiff
path: root/libappstream-glib/as-content-rating.h
diff options
context:
space:
mode:
Diffstat (limited to 'libappstream-glib/as-content-rating.h')
-rw-r--r--libappstream-glib/as-content-rating.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/libappstream-glib/as-content-rating.h b/libappstream-glib/as-content-rating.h
index 42decd3..4d8b5b2 100644
--- a/libappstream-glib/as-content-rating.h
+++ b/libappstream-glib/as-content-rating.h
@@ -52,12 +52,66 @@ typedef enum {
AS_CONTENT_RATING_VALUE_LAST
} AsContentRatingValue;
+/**
+ * AsContentRatingSystem:
+ * @AS_CONTENT_RATING_SYSTEM_UNKNOWN: Unknown ratings system
+ * @AS_CONTENT_RATING_SYSTEM_INCAA: INCAA
+ * @AS_CONTENT_RATING_SYSTEM_ACB: ACB
+ * @AS_CONTENT_RATING_SYSTEM_DJCTQ: DJCTQ
+ * @AS_CONTENT_RATING_SYSTEM_GSRR: GSRR
+ * @AS_CONTENT_RATING_SYSTEM_PEGI: PEGI
+ * @AS_CONTENT_RATING_SYSTEM_KAVI: KAVI
+ * @AS_CONTENT_RATING_SYSTEM_USK: USK
+ * @AS_CONTENT_RATING_SYSTEM_ESRA: ESRA
+ * @AS_CONTENT_RATING_SYSTEM_CERO: CERO
+ * @AS_CONTENT_RATING_SYSTEM_OFLCNZ: OFLCNZ
+ * @AS_CONTENT_RATING_SYSTEM_RUSSIA: Russia
+ * @AS_CONTENT_RATING_SYSTEM_MDA: MDA
+ * @AS_CONTENT_RATING_SYSTEM_GRAC: GRAC
+ * @AS_CONTENT_RATING_SYSTEM_ESRB: ESRB
+ * @AS_CONTENT_RATING_SYSTEM_IARC: IARC
+ *
+ * A content rating system for a particular territory.
+ *
+ * Since: 0.7.18
+ */
+typedef enum {
+ AS_CONTENT_RATING_SYSTEM_UNKNOWN,
+ AS_CONTENT_RATING_SYSTEM_INCAA,
+ AS_CONTENT_RATING_SYSTEM_ACB,
+ AS_CONTENT_RATING_SYSTEM_DJCTQ,
+ AS_CONTENT_RATING_SYSTEM_GSRR,
+ AS_CONTENT_RATING_SYSTEM_PEGI,
+ AS_CONTENT_RATING_SYSTEM_KAVI,
+ AS_CONTENT_RATING_SYSTEM_USK,
+ AS_CONTENT_RATING_SYSTEM_ESRA,
+ AS_CONTENT_RATING_SYSTEM_CERO,
+ AS_CONTENT_RATING_SYSTEM_OFLCNZ,
+ AS_CONTENT_RATING_SYSTEM_RUSSIA,
+ AS_CONTENT_RATING_SYSTEM_MDA,
+ AS_CONTENT_RATING_SYSTEM_GRAC,
+ AS_CONTENT_RATING_SYSTEM_ESRB,
+ AS_CONTENT_RATING_SYSTEM_IARC,
+ /*< private >*/
+ AS_CONTENT_RATING_SYSTEM_LAST
+} AsContentRatingSystem;
+
AsContentRating *as_content_rating_new (void);
/* helpers */
const gchar *as_content_rating_value_to_string (AsContentRatingValue value);
AsContentRatingValue as_content_rating_value_from_string (const gchar *value);
+const gchar *as_content_rating_system_to_string (AsContentRatingSystem system);
+gchar *as_content_rating_system_format_age (AsContentRatingSystem system,
+ guint age);
+
+AsContentRatingSystem as_content_rating_system_from_locale (const gchar *locale);
+
+gchar **as_content_rating_system_get_formatted_ages (AsContentRatingSystem system);
+const guint *as_content_rating_system_get_csm_ages (AsContentRatingSystem system,
+ gsize *length_out);
+
/* getters */
const gchar *as_content_rating_get_kind (AsContentRating *content_rating);
guint as_content_rating_get_minimum_age (AsContentRating *content_rating);
@@ -71,6 +125,10 @@ const gchar **as_content_rating_get_rating_ids (AsContentRating *content_rating)
guint as_content_rating_attribute_to_csm_age (const gchar *id,
AsContentRatingValue value);
+AsContentRatingValue as_content_rating_attribute_from_csm_age (const gchar *id,
+ guint age);
+const gchar *as_content_rating_attribute_get_description (const gchar *id,
+ AsContentRatingValue value);
const gchar **as_content_rating_get_all_rating_ids (void);
/* setters */