1 #ifndef __W32G_TRACER_H__
2 #define __W32G_TRACER_H__
3 
4 #define TRACER_CHANNELS 32
5 typedef struct w32g_tracer_wnd_t_ {
6 	HWND hwnd;
7 	HWND hParentWnd;
8 	HDC hdc;
9 	HDC hmdc;
10 	HGDIOBJ hgdiobj_hmdcprev;
11 	HBITMAP hbitmap;
12 	HFONT hFontCommon;
13 	HFONT hFontHalf;
14 	RECT rc;
15 	int font_common_height;
16 	int font_common_width;
17 	int height;
18 	int width;
19 	int valid;
20 	int active;
21 	int updateall;
22 	RECT rc_current_time;
23 	RECT rc_tempo;
24 	RECT rc_master_volume;	// �}�X�^�[�{�����[��
25 	RECT rc_maxvoices;
26 
27 	RECT rc_head;
28 	RECT rc_all_channels;		// ���ׂẴ`�����l��
29 	int ch_height;		// �`�����l���̕\���̍���
30 	int ch_space;		// �`�����l���̊Ԃ̃X�y�[�X
31 	RECT rc_channel_top;			// �`�����l��
32 	RECT rc_instrument;		// �v���O����������
33 	RECT rc_inst_map;
34 	RECT rc_bank;
35 	RECT rc_program;		// �v���O�����ԍ�
36 	RECT rc_velocity;
37 	RECT rc_volume;
38 	RECT rc_expression;
39 	RECT rc_panning;
40 	RECT rc_sustain;
41 	RECT rc_pitch_bend;
42 	RECT rc_mod_wheel;
43 	RECT rc_chorus_effect;
44 	RECT rc_reverb_effect;
45 	RECT rc_temper_keysig;
46 	RECT rc_temper_type;
47 	RECT rc_notes;
48 	RECT rc_gm;
49 	RECT rc_gs;
50 	RECT rc_xg;
51 	RECT rc_head_rest;
52 
53 	char current_time[30];
54 	long current_time_sec;
55 	long tempo;
56 	int master_volume;
57 	int maxvoices;
58 	char instrument[TRACER_CHANNELS][256];
59 	short bank[TRACER_CHANNELS];
60 	short program[TRACER_CHANNELS];
61 	int velocity[TRACER_CHANNELS];
62 	short volume[TRACER_CHANNELS];
63 	short expression[TRACER_CHANNELS];
64 	short panning[TRACER_CHANNELS];
65 	short sustain[TRACER_CHANNELS];
66 	short pitch_bend[TRACER_CHANNELS];
67 	short mod_wheel[TRACER_CHANNELS];
68 	short chorus_effect[TRACER_CHANNELS];
69 	short reverb_effect[TRACER_CHANNELS];
70 	int8 tt[TRACER_CHANNELS];
71 	char notes[TRACER_CHANNELS][256];
72 	char filename[1024];
73 	char titlename[1024];
74 	int play_system_mode;
75 	ChannelBitMask quietchannels;
76 	ChannelBitMask channel_mute;
77 	int mapID[TRACER_CHANNELS];
78 
79 	HBRUSH hNullBrush;
80 	HPEN hNullPen;
81 } w32g_tracer_wnd_t;
82 
83 extern void TracerWndReset(void);
84 extern void TracerWndClear(int lockflag);
85 extern void TracerWndPaintAll(int lockflag);
86 extern void TracerWndPaintDo(int flag);
87 extern w32g_tracer_wnd_t w32g_tracer_wnd;
88 
89 // section of ini file
90 // [TracerWnd]
91 // PosX =
92 // PosY =
93 typedef struct TRACERWNDINFO_ {
94 	HWND hwnd;
95 	int PosX;
96 	int PosY;
97 	int mode;
98 } TRACERWNDINFO;
99 extern TRACERWNDINFO TracerWndInfo;
100 
101 extern int INISaveTracerWnd(void);
102 extern int INILoadTracerWnd(void);
103 
104 
105 #endif /* __W32G_TRACER_H__ */
106