Markopy
Utilizing Markov Models for brute forcing attacks
term.h
Go to the documentation of this file.
1
/** @file term.h
2
* @brief Terminal handler for pretty stuff like colors
3
* @authors Ata Hakçıl
4
*
5
* @copydoc Markov::API::CLI::Terminal
6
*/
7
8
#
pragma
once
9
10
#
ifdef
_WIN32
11
#
include
<
Windows
.
h
>
12
#
endif
13
14
#
include
<
iostream
>
15
#
include
<
map
>
16
17
#
define
TERM_FAIL
"["
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
RED
<<
"+"
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
RESET
<<
"] "
18
#
define
TERM_INFO
"["
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
BLUE
<<
"+"
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
RESET
<<
"] "
19
#
define
TERM_WARN
"["
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
YELLOW
<<
"+"
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
RESET
<<
"] "
20
#
define
TERM_SUCC
"["
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
GREEN
<<
"+"
<<
Markov
::
API
::
CLI
::
Terminal
::
color
::
RESET
<<
"] "
21
22
namespace
Markov
::
API
::
CLI
{
23
/** @brief pretty colors for Terminal. Windows Only.
24
*/
25
class
Terminal
{
26
public
:
27
28
/** Default constructor.
29
* Get references to stdout and stderr handles.
30
*/
31
Terminal
();
32
33
enum
color
{
RESET
,
BLACK
,
RED
,
GREEN
,
YELLOW
,
BLUE
,
MAGENTA
,
CYAN
,
WHITE
,
LIGHTGRAY
,
DARKGRAY
,
BROWN
};
34
#
ifdef
_WIN32
35
static
HANDLE
_stdout
;
36
static
HANDLE
_stderr
;
37
static
std
::
map
<
Markov
::
API
::
CLI
::
Terminal
::
color
,
DWORD
>
colormap
;
38
#
else
39
static
std::map<
Markov
::
API
::
CLI
::
Terminal
::
color
,
int
>
colormap
;
40
#
endif
41
42
43
44
static
std::ostream
endl
;
45
46
47
};
48
49
/** overload for std::cout.
50
*/
51
std::ostream& operator<<(std::ostream& os,
const
Markov
::
API
::
CLI
::
Terminal
::
color
& c);
52
53
}
Markopy
MarkovAPICLI
src
color
term.h
Generated by
1.9.0