aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/user.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/user.c')
-rw-r--r--src/test/user.c143
1 files changed, 0 insertions, 143 deletions
diff --git a/src/test/user.c b/src/test/user.c
deleted file mode 100644
index 7a1fd78..0000000
--- a/src/test/user.c
+++ /dev/null
@@ -1,143 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-#include "user.h"
-
-
-#ifdef __GCC__
-# include <string.h>
-#else
-/* Hack to circumvent that the funcions are defined multiples */
-# define strlen strlen_
-# define memcpy memcpy_
-# define strchr strchr_
-static size_t
-strlen_(const char *str) {
- size_t n = 0;
- while (str[n])
- n++;
- return n;
-}
-static void *
-memcpy_(void *restrict dest, const void *restrict src, size_t n)
-{
- char *restrict d = dest;
- const char *restrict s = src;
- size_t i;
- for (i = 0; i < n; i++)
- d[i] = s[i];
- return dest;
-}
-static char *strchr_(const char *s, int c)
-{
- char find = (char)c;
- for (; *s; s++)
- if (*s == find)
- return s;
- return NULL;
-}
-#endif
-
-
-/**
- * Let the user select adjustment method, site, partition and CRTC
- *
- * @param site_state Output slot for the site
- * @param part_state Output slot for the partition
- * @param crtc_state Output slot for the CRTC
- * @return Zero on and only on success
- */
-int
-select_monitor(libgamma_site_state_t *restrict site_state,
- libgamma_partition_state_t *restrict part_state,
- libgamma_crtc_state_t *restrict crtc_state)
-{
- int method;
- char *site;
- char *tmp;
- char buf[256];
- int r;
-
-
- /* -- Adjustment method -- */
-
- /* Let the user select adjustment method */
- printf("Select adjustment method:\n");
- for (method = 0; method < LIBGAMMA_METHOD_COUNT; method++)
- printf(" %i: %s\n", method, method_name(method));
- printf("> ");
- fflush(stdout);
- fgets(buf, sizeof(buf) / sizeof(char), stdin);
- method = atoi(buf);
-
-
- /* -- Site -- */
-
- /* Let the user select site */
- printf("Select site: ");
- fflush(stdout);
- fgets(buf, sizeof(buf) / sizeof(char), stdin);
- tmp = strchr(buf, '\n');
- if (tmp)
- *tmp = '\0';
- if (!buf[0]) {
- site = NULL;
- } else {
- site = malloc((strlen(buf) + 1) * sizeof(char));
- memcpy(site, buf, strlen(buf) + 1);
- }
-
- /* Initialise site state */
- if ((r = libgamma_site_initialise(site_state, method, site))) {
- free(site);
- libgamma_perror("error", r);
- return 1;
- }
-
-
- /* -- Partition -- */
-
- /* Check that the site has at least one partition */
- if (!site_state->partitions_available) {
- libgamma_site_free(site_state);
- printf("No partitions found\n");
- return 1;
- }
-
- /* Let the user select partition */
- printf("Select partition [0, %lu]: ", site_state->partitions_available - 1);
- fflush(stdout);
- fgets(buf, sizeof(buf) / sizeof(char), stdin);
-
- /* Initialise partition state */
- if ((r = libgamma_partition_initialise(part_state, site_state, (size_t)atoll(buf)))) {
- libgamma_site_free(site_state);
- libgamma_perror("error", r);
- return 1;
- }
-
-
- /* -- CRTC -- */
-
- /* Check that the partition has at least one CRTC */
- if (!part_state->crtcs_available) {
- libgamma_partition_free(part_state);
- libgamma_site_free(site_state);
- printf("No CRTC:s found\n");
- return 1;
- }
-
- /* Let the user select CRTC */
- printf("Select CRTC [0, %lu]: ", part_state->crtcs_available - 1);
- fflush(stdout);
- fgets(buf, sizeof(buf) / sizeof(char), stdin);
-
- /* Initialise CRTC state. */
- if ((r = libgamma_crtc_initialise(crtc_state, part_state, (size_t)atoll(buf)))) {
- libgamma_partition_free(part_state);
- libgamma_site_free(site_state);
- libgamma_perror("error", r);
- return 1;
- }
-
- printf("\n");
- return 0;
-}