]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
DVR: move query functions to simpleui (only this user)
authorJaroslav Kysela <perex@perex.cz>
Wed, 17 Sep 2014 16:26:37 +0000 (18:26 +0200)
committerJaroslav Kysela <perex@perex.cz>
Wed, 17 Sep 2014 16:26:37 +0000 (18:26 +0200)
src/dvr/dvr.h
src/dvr/dvr_db.c
src/webui/simpleui.c

index 542d957b0e4cd852f775c08e65d29ba2201c29ff..36719ba68c0a562b1ddea62d68f3cf090b8b36fa 100644 (file)
@@ -453,28 +453,6 @@ htsmsg_t *dvr_entry_class_pri_list(void *o);
 htsmsg_t *dvr_entry_class_config_name_list(void *o);
 htsmsg_t *dvr_entry_class_duration_list(void *o, const char *not_set, int max, int step);
 
-/**
- * Query interface
- */
-typedef struct dvr_query_result {
-  dvr_entry_t **dqr_array;
-  int dqr_entries;
-  int dqr_alloced;
-} dvr_query_result_t;
-
-typedef int (dvr_entry_filter)(dvr_entry_t *entry);
-typedef int (dvr_entry_comparator)(const void *a, const void *b);
-
-void dvr_query(dvr_query_result_t *dqr);
-void dvr_query_filter(dvr_query_result_t *dqr, dvr_entry_filter filter);
-void dvr_query_free(dvr_query_result_t *dqr);
-
-void dvr_query_sort_cmp(dvr_query_result_t *dqr, dvr_entry_comparator cmp);
-void dvr_query_sort(dvr_query_result_t *dqr);
-
-int dvr_sort_start_descending(const void *A, const void *B);
-int dvr_sort_start_ascending(const void *A, const void *B);
-
 /**
  *
  */
index 1e3a9d7b20df2feabeac3b6eabfeb3a0c152fec2..3a470880b7ff53666fb6f55eb52be7929972aae0 100644 (file)
@@ -1905,93 +1905,6 @@ dvr_destroy_by_channel(channel_t *ch, int delconf)
   }
 }
 
-/**
- *
- */
-static void
-dvr_query_add_entry(dvr_query_result_t *dqr, dvr_entry_t *de)
-{
-  if(dqr->dqr_entries == dqr->dqr_alloced) {
-    /* Need to alloc more space */
-
-    dqr->dqr_alloced = MAX(100, dqr->dqr_alloced * 2);
-    dqr->dqr_array = realloc(dqr->dqr_array, 
-                            dqr->dqr_alloced * sizeof(dvr_entry_t *));
-  }
-  dqr->dqr_array[dqr->dqr_entries++] = de;
-}
-
-void
-dvr_query_filter(dvr_query_result_t *dqr, dvr_entry_filter filter)
-{
-  dvr_entry_t *de;
-
-  memset(dqr, 0, sizeof(dvr_query_result_t));
-
-  LIST_FOREACH(de, &dvrentries, de_global_link)
-    if (filter(de))
-      dvr_query_add_entry(dqr, de);
-}
-
-static int all_filter(dvr_entry_t *entry)
-{
-  return 1;
-}
-
-/**
- *
- */
-void
-dvr_query(dvr_query_result_t *dqr)
-{
-  return dvr_query_filter(dqr, all_filter);
-}
-
-/**
- *
- */
-void
-dvr_query_free(dvr_query_result_t *dqr)
-{
-  free(dqr->dqr_array);
-}
-
-/**
- * Sorting functions
- */
-int
-dvr_sort_start_descending(const void *A, const void *B)
-{
-  dvr_entry_t *a = *(dvr_entry_t **)A;
-  dvr_entry_t *b = *(dvr_entry_t **)B;
-  return b->de_start - a->de_start;
-}
-
-int
-dvr_sort_start_ascending(const void *A, const void *B)
-{
-  return -dvr_sort_start_descending(A, B);
-}
-
-
-/**
- *
- */
-void
-dvr_query_sort_cmp(dvr_query_result_t *dqr, dvr_entry_comparator sf)
-{
-  if(dqr->dqr_array == NULL)
-    return;
-
-  qsort(dqr->dqr_array, dqr->dqr_entries, sizeof(dvr_entry_t *), sf);
-}  
-
-void
-dvr_query_sort(dvr_query_result_t *dqr)
-{
-  dvr_query_sort_cmp(dqr, dvr_sort_start_descending);
-}
-
 /**
  *
  */
index 1f23708bbacd06ef02f2743fa3db9b572e93a380..bb0ad8f6fcdecb05e70ca18fae07ccb6d7c81cef 100644 (file)
@@ -51,6 +51,103 @@ const char *days[7] = {
   "Saturday",
 };
 
+typedef struct dvr_query_result {
+  dvr_entry_t **dqr_array;
+  int dqr_entries;
+  int dqr_alloced;
+} dvr_query_result_t;
+
+typedef int (dvr_entry_filter)(dvr_entry_t *entry);
+typedef int (dvr_entry_comparator)(const void *a, const void *b);
+
+/**
+ *
+ */
+static void
+dvr_query_add_entry(dvr_query_result_t *dqr, dvr_entry_t *de)
+{
+  if(dqr->dqr_entries == dqr->dqr_alloced) {
+    /* Need to alloc more space */
+
+    dqr->dqr_alloced = MAX(100, dqr->dqr_alloced * 2);
+    dqr->dqr_array = realloc(dqr->dqr_array,
+                            dqr->dqr_alloced * sizeof(dvr_entry_t *));
+  }
+  dqr->dqr_array[dqr->dqr_entries++] = de;
+}
+
+static void
+dvr_query_filter(dvr_query_result_t *dqr, dvr_entry_filter filter)
+{
+  dvr_entry_t *de;
+
+  memset(dqr, 0, sizeof(dvr_query_result_t));
+
+  LIST_FOREACH(de, &dvrentries, de_global_link)
+    if (filter(de))
+      dvr_query_add_entry(dqr, de);
+}
+
+static int all_filter(dvr_entry_t *entry)
+{
+  return 1;
+}
+
+/**
+ *
+ */
+static void
+dvr_query(dvr_query_result_t *dqr)
+{
+  return dvr_query_filter(dqr, all_filter);
+}
+
+/**
+ *
+ */
+static void
+dvr_query_free(dvr_query_result_t *dqr)
+{
+  free(dqr->dqr_array);
+}
+
+/**
+ * Sorting functions
+ */
+static int
+dvr_sort_start_descending(const void *A, const void *B)
+{
+  dvr_entry_t *a = *(dvr_entry_t **)A;
+  dvr_entry_t *b = *(dvr_entry_t **)B;
+  return b->de_start - a->de_start;
+}
+
+#if 0
+static int
+dvr_sort_start_ascending(const void *A, const void *B)
+{
+  return -dvr_sort_start_descending(A, B);
+}
+#endif
+
+/**
+ *
+ */
+static void
+dvr_query_sort_cmp(dvr_query_result_t *dqr, dvr_entry_comparator sf)
+{
+  if(dqr->dqr_array == NULL)
+    return;
+
+  qsort(dqr->dqr_array, dqr->dqr_entries, sizeof(dvr_entry_t *), sf);
+}
+
+static void
+dvr_query_sort(dvr_query_result_t *dqr)
+{
+  dvr_query_sort_cmp(dqr, dvr_sort_start_descending);
+}
+
 /**
  * Root page, we direct the client to different pages depending
  * on if it is a full blown browser or just some mobile app