diff options
author | jonas <himself@jonasgunz.de> | 2018-12-27 00:26:34 +0100 |
---|---|---|
committer | jonas <himself@jonasgunz.de> | 2018-12-27 00:26:34 +0100 |
commit | 7015245de4af673af3e6fa62d5d0f9c2e0c2a8a1 (patch) | |
tree | 8bec5d1716eebb0fedc75dcc036385443b1ecea5 /cInput.h | |
parent | 616951a353caf398908e6e6ce7dddf34a65513e5 (diff) | |
download | termgl-7015245de4af673af3e6fa62d5d0f9c2e0c2a8a1.tar.gz |
cleaned working tree
Diffstat (limited to 'cInput.h')
-rw-r--r-- | cInput.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/cInput.h b/cInput.h new file mode 100644 index 0000000..8e3481c --- /dev/null +++ b/cInput.h @@ -0,0 +1,48 @@ +/* +* cInput is responsible for Handling everything related to setting up and managing the console window +* as well as decoding keyboard and mouse events. +* Compatible with xterm compatible terminal emulators +*/ + +#ifndef CINPUT_H_ +#define CINPUT_H_ + +#include <stdio.h> +#include <unistd.h> +#include <termios.h> +#include <sys/select.h> + +#ifdef __linux__ +#elif _WIN32 + #error "Platforn not supported" +#else + #error "Platforn not supported" +#endif + +#define _EVENT_NULL 0 +#define _EVENT_CHAR 1 +#define _EVENT_KEY 2 +#define _EVENT_MOUSE 3 + +struct sInputEvent +{ + unsigned int type; + unsigned char c; + unsigned int b; + unsigned int x, y; +}; + +class cInput +{ +public: + cInput(); + + ~cInput(); + + sInputEvent poll(); + +private: + struct termios original, raw; +}; + +#endif /* end of include guard: */ |