1 /** 2 * @file evcode.h 3 * Copyright 2012, 2013 MinGW.org project 4 * 5 * Permission is hereby granted, free of charge, to any person obtaining a 6 * copy of this software and associated documentation files (the "Software"), 7 * to deal in the Software without restriction, including without limitation 8 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 9 * and/or sell copies of the Software, and to permit persons to whom the 10 * Software is furnished to do so, subject to the following conditions: 11 * 12 * The above copyright notice and this permission notice (including the next 13 * paragraph) shall be included in all copies or substantial portions of the 14 * Software. 15 * 16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22 * DEALINGS IN THE SOFTWARE. 23 */ 24 #ifndef _EVCODE_H 25 #define _EVCODE_H 26 #pragma GCC system_header 27 #include <_mingw.h> 28 29 #ifdef __cplusplus 30 extern "C" { 31 #endif 32 33 /*--- DirectShow Reference - Constants and GUIDs - Event Notification Codes */ 34 #define EC_ACTIVATE 0x0013 35 #define EC_BUFFERING_DATA 0x0011 36 #define EC_BUILT 0x0300 37 #define EC_CLOCK_CHANGED 0x000D 38 #define EC_CLOCK_UNSET 0x0051 39 #define EC_CODECAPI_EVENT 0x0057 40 #define EC_COMPLETE 0x0001 41 #define EC_DEVICE_LOST 0x001F 42 #define EC_DISPLAY_CHANGED 0x0016 43 #define EC_END_OF_SEGMENT 0x001C 44 #define EC_ERROR_STILLPLAYING 0x0008 45 #define EC_ERRORABORT 0x0003 46 #define EC_EXTDEVICE_MODE_CHANGE 0x0031 47 #define EC_FULLSCREEN_LOST 0x0012 48 #define EC_GRAPH_CHANGED 0x0050 49 #define EC_LENGTH_CHANGED 0x001E 50 #define EC_NEED_RESTART 0x0014 51 #define EC_NOTIFY_WINDOW 0x0019 52 #define EC_OLE_EVENT 0x0018 53 #define EC_OPENING_FILE 0x0010 54 #define EC_PALETTE_CHANGED 0x0009 55 #define EC_PAUSED 0x000E 56 #define EC_PREPROCESS_COMPLETE 0x0056 57 #define EC_QUALITY_CHANGE 0x000B 58 #define EC_REPAINT 0x0005 59 #define EC_SEGMENT_STARTED 0x001D 60 #define EC_SHUTTING_DOWN 0x000C 61 #define EC_SNDDEV_IN_ERROR 0x0200 62 #define EC_SNDDEV_OUT_ERROR 0x0201 63 #define EC_STARVATION 0x0017 64 #define EC_STATE_CHANGE 0x0032 65 #define EC_STEP_COMPLETE 0x0024 66 #define EC_STREAM_CONTROL_STARTED 0x001B 67 #define EC_STREAM_CONTROL_STOPPED 0x001A 68 #define EC_STREAM_ERROR_STILLPLAYING 0x0007 69 #define EC_STREAM_ERROR_STOPPED 0x0006 70 #define EC_TIMECODE_AVAILABLE 0x0030 71 #define EC_UNBUILT 0x0301 72 #define EC_USERABORT 0x0002 73 #define EC_VIDEO_SIZE_CHANGED 0x000A 74 #define EC_VMR_RENDERDEVICE_SET 0x0053 75 #define EC_VMR_SURFACE_FLIPPED 0x0054 76 #define EC_VMR_RECONNECTION_FAILED 0x0055 77 #define EC_WINDOW_DESTROYED 0x0015 78 #define EC_WMT_EVENT 0x0252 79 #define EC_WMT_INDEX_EVENT 0x0251 80 #define EC_USER 0x8000 81 /*--- DirectShow Reference - DirectShow Structures */ 82 typedef struct { 83 HRESULT hrStatus; 84 void *pData; 85 } AM_WMT_EVENT_DATA; 86 87 #ifdef __cplusplus 88 } 89 #endif 90 #endif 91