47 lines
2.1 KiB
C
47 lines
2.1 KiB
C
/*
|
|
* UPIWIN - Micro Pi Windowing Framework Kernel
|
|
* Copyright (C) 2019 Amy Bowersox/Erbosoft Metaverse Design Solutions
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along
|
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef __CONFIG_H_INCLUDED
|
|
#define __CONFIG_H_INCLUDED
|
|
|
|
#include "wintype.h"
|
|
|
|
typedef void (*PEXITFUNC)(void);
|
|
|
|
/* global configuration data for UPIWIN */
|
|
typedef struct tagGLOBAL_CONFIG {
|
|
PCSTR framebuffer_device; /* name of frame buffer device */
|
|
PCSTR touchscreen_device; /* name of touchscreen device */
|
|
PCSTR python_loc; /* location of the Python3 executable */
|
|
UINT32 button_debounce; /* minimum time between button up and next button down (ms) */
|
|
UINT32 sys_mq_length; /* length of system message queue */
|
|
UINT32 click_time; /* time between button/touch DOWN and UP to be considered a "click" (ms) */
|
|
UINT32 click_radius; /* maximum number of pixels a touch can "drift" to be considered a "click" */
|
|
PCSTR script_name; /* script name to be run */
|
|
INT32 script_arg_count; /* number of arguments to pass to the script */
|
|
PPCSTR script_args; /* arguments to pass to the script */
|
|
} GLOBAL_CONFIG;
|
|
|
|
extern GLOBAL_CONFIG Gconfig; /* one global configuration to rule them all */
|
|
|
|
extern HRESULT Config_setup(int argc, char *argv[]);
|
|
extern HRESULT Config_exitfunc(PEXITFUNC pfn);
|
|
|
|
#endif /* __CONFIG_H_INCLUDED */
|