ReactOS  0.4.13-dev-247-g0f29b3f
matrix.h
Go to the documentation of this file.
1 #ifndef MATRIX_INCLUDED
2 #define MATRIX_INCLUDED
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 //
9 // Top BYTE of each glyph is used as flags
10 // (redraw state, intensity etc)
11 //
12 // Bottom BYTE of each glyph is the character value
13 //
14 // Bit: 15 14 13-8 | 7-0
15 //
16 // [Redraw][Blank][Intensity] [Glyph]
17 //
18 typedef unsigned short GLYPH;
19 
20 #define GLYPH_REDRAW 0x8000
21 #define GLYPH_BLANK 0x4000
22 
23 //
24 // The "matrix" is basically an array of these
25 // column structures, positioned side-by-side
26 //
27 typedef struct
28 {
30  int countdown;
31 
33  int runlen;
34 
35  int blippos;
36  int bliplen;
37 
38  int length;
40 
42 
43 typedef struct
44 {
45  int width;
46  int height;
47  int numcols;
48  int numrows;
49 
50  // bitmap containing glyphs.
53 
55 
57 
58 } MATRIX;
59 
60 GLYPH RandomGlyph(int intensity);
61 void DrawGlyph(MATRIX *matrix, HDC hdc, int xpos, int ypos, GLYPH glyph);
62 
64 void InitScreenSaveClass();
65 
66 #ifdef __cplusplus
67 }
68 #endif
69 
70 #endif
GLuint GLenum matrix
Definition: glext.h:9407
int bliplen
Definition: matrix.h:36
int runlen
Definition: matrix.h:33
static HDC
Definition: imagelist.c:92
HBITMAP hbmBitmap
Definition: matrix.h:52
int numcols
Definition: matrix.h:47
unsigned short GLYPH
Definition: matrix.h:18
GLYPH * glyph
Definition: matrix.h:39
& rect
Definition: startmenu.cpp:1413
BOOL state
Definition: matrix.h:29
BOOL started
Definition: matrix.h:32
unsigned int BOOL
Definition: ntddk_ex.h:94
int width
Definition: matrix.h:45
static HWND hwndParent
Definition: cryptui.c:300
int height
Definition: matrix.h:46
HWND CreateScreenSaveWnd(HWND hwndParent, RECT *rect)
Definition: matrix.c:390
int countdown
Definition: matrix.h:30
int numrows
Definition: matrix.h:48
Definition: matrix.h:43
HDC hdcBitmap
Definition: matrix.h:51
HDC hdc
Definition: main.c:9
int length
Definition: matrix.h:38
void InitScreenSaveClass()
GLYPH RandomGlyph(int intensity)
Definition: matrix.c:45
MATRIX_MESSAGE * message
Definition: matrix.h:54
int blippos
Definition: matrix.h:35
static HBITMAP
Definition: button.c:44
struct _MATRIX MATRIX
void DrawGlyph(MATRIX *matrix, HDC hdc, int xpos, int ypos, GLYPH glyph)
Definition: matrix.c:167