Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.5 KiB

  1. /*
  2. * midimon.h
  3. */
  4. /* Compile-time application metrics
  5. */
  6. #define MAX_NUM_DEVICES 8 // max # of MIDI input devices
  7. #define INPUT_BUFFER_SIZE 200 // size of input buffer in events
  8. #define DISPLAY_BUFFER_SIZE 1000 // size of display buffer in events
  9. /* Menu IDs
  10. */
  11. #define IDM_SAVE 101
  12. #define IDM_EXIT 102
  13. #define IDM_SETBUFSIZE 201
  14. #define IDM_SETDISPLAY 202
  15. #define IDM_SAVESETUP 203
  16. #define IDM_SENDTOMAPPER 204
  17. #define IDM_FILTCHAN0 300
  18. #define IDM_FILTCHAN1 301
  19. #define IDM_FILTCHAN2 302
  20. #define IDM_FILTCHAN3 303
  21. #define IDM_FILTCHAN4 304
  22. #define IDM_FILTCHAN5 305
  23. #define IDM_FILTCHAN6 306
  24. #define IDM_FILTCHAN7 307
  25. #define IDM_FILTCHAN8 308
  26. #define IDM_FILTCHAN9 309
  27. #define IDM_FILTCHAN10 310
  28. #define IDM_FILTCHAN11 311
  29. #define IDM_FILTCHAN12 312
  30. #define IDM_FILTCHAN13 313
  31. #define IDM_FILTCHAN14 314
  32. #define IDM_FILTCHAN15 315
  33. #define IDM_NOTEOFF 316
  34. #define IDM_NOTEON 317
  35. #define IDM_POLYAFTERTOUCH 318
  36. #define IDM_CONTROLCHANGE 319
  37. #define IDM_PROGRAMCHANGE 320
  38. #define IDM_CHANNELAFTERTOUCH 321
  39. #define IDM_PITCHBEND 322
  40. #define IDM_CHANNELMODE 323
  41. #define IDM_SYSTEMEXCLUSIVE 324
  42. #define IDM_SYSTEMCOMMON 325
  43. #define IDM_SYSTEMREALTIME 326
  44. #define IDM_ACTIVESENSE 327
  45. #define IDM_STARTSTOP 400
  46. #define IDM_CLEAR 500
  47. #define IDM_ABOUT 600
  48. /* String resource IDs
  49. */
  50. #define IDS_APPNAME 1
  51. /* Custom messages sent by low-level callback to application
  52. */
  53. #define MM_MIDIINPUT WM_USER + 0
  54. /* The label for the display window.
  55. */
  56. #define LABEL " TIMESTAMP STATUS DATA1 DATA2 CHAN EVENT "
  57. /* Structure for translating virtual key messages to scroll messages.
  58. */
  59. typedef struct keyToScroll_tag
  60. {
  61. WORD wVirtKey;
  62. int iMessage;
  63. WORD wRequest;
  64. } KEYTOSCROLL;
  65. /* Structure to represent a single MIDI event.
  66. */
  67. typedef struct event_tag
  68. {
  69. DWORD dwDevice;
  70. DWORD timestamp;
  71. DWORD data;
  72. } EVENT;
  73. typedef EVENT FAR *LPEVENT;
  74. /* Function prototypes
  75. */
  76. LRESULT FAR PASCAL WndProc(HWND, UINT, WPARAM , LPARAM);
  77. VOID CommandMsg(HWND hWnd, WPARAM wParam, LPARAM lParam);
  78. void DoMenuItemCheck(HWND hWnd, WORD menuItem, BOOL newState);
  79. void SetupCustomChecks(HANDLE hInstance, HWND hWnd);
  80. BOOL InitFirstInstance(HANDLE);
  81. int Error(LPSTR msg);