ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

medparam.idl
Go to the documentation of this file.
00001 
00002 
00003 import "oaidl.idl";
00004 import "ocidl.idl";
00005 import "strmif.idl";
00006 
00007 
00008 typedef float MP_DATA;
00009 
00010 typedef enum _MP_Type
00011 {
00012    MPT_INT,
00013    MPT_FLOAT,
00014    MPT_BOOL,
00015    MPT_ENUM,
00016    MPT_MAX,
00017 } MP_TYPE;
00018 
00019 cpp_quote("const MP_DATA MPBOOL_TRUE = 1.0;")
00020 cpp_quote("const MP_DATA MPBOOL_FALSE = 0.0;")
00021 
00022 
00023 typedef enum _MP_CURVE_TYPE
00024 {
00025     MP_CURVE_JUMP      = 0x0001,
00026     MP_CURVE_LINEAR    = 0x0002,
00027     MP_CURVE_SQUARE    = 0x0004,
00028     MP_CURVE_INVSQUARE = 0x0008,
00029     MP_CURVE_SINE      = 0x0010,
00030 } MP_CURVE_TYPE;
00031 
00032 
00033 typedef DWORD MP_CAPS;
00034 const MP_CAPS MP_CAPS_CURVE_JUMP = MP_CURVE_JUMP;
00035 const MP_CAPS MP_CAPS_CURVE_LINEAR = MP_CURVE_LINEAR;
00036 const MP_CAPS MP_CAPS_CURVE_SQUARE = MP_CURVE_SQUARE;
00037 const MP_CAPS MP_CAPS_CURVE_INVSQUARE = MP_CURVE_INVSQUARE;
00038 const MP_CAPS MP_CAPS_CURVE_SINE = MP_CURVE_SINE;
00039 
00040 typedef struct _MP_PARAMINFO
00041 {
00042    MP_TYPE mpType;
00043    MP_CAPS  mopCaps;
00044    MP_DATA mpdMinValue;
00045    MP_DATA mpdMaxValue;
00046    MP_DATA mpdNeutralValue;
00047    WCHAR szUnitText[32];
00048    WCHAR szLabel[32];
00049 } MP_PARAMINFO;
00050 
00051 const DWORD DWORD_ALLPARAMS = -1;
00052 typedef DWORD MP_TIMEDATA;
00053 
00054 cpp_quote("DEFINE_GUID(GUID_TIME_REFERENCE,    0x93ad712b, 0xdaa0, 0x4ffe, 0xbc, 0x81, 0xb0, 0xce, 0x50, 0x0f, 0xcd, 0xd9);")
00055 cpp_quote("DEFINE_GUID(GUID_TIME_MUSIC,        0x0574c49d, 0x5b04, 0x4b15, 0xa5, 0x42, 0xae, 0x28, 0x20, 0x30, 0x11, 0x7b);")
00056 cpp_quote("DEFINE_GUID(GUID_TIME_SAMPLES,      0xa8593d05, 0x0c43, 0x4984, 0x9a, 0x63, 0x97, 0xaf, 0x9e, 0x02, 0xc4, 0xc0);")
00057 
00058 typedef DWORD MP_FLAGS;
00059 const MP_FLAGS MPF_ENVLP_STANDARD         = 0x0000;
00060 const MP_FLAGS MPF_ENVLP_BEGIN_CURRENTVAL = 0x0001;
00061 const MP_FLAGS MPF_ENVLP_BEGIN_NEUTRALVAL = 0x0002;
00062 
00063 typedef struct _MP_ENVELOPE_SEGMENT
00064 {
00065    REFERENCE_TIME rtStart;
00066    REFERENCE_TIME rtEnd;
00067    MP_DATA valStart;
00068    MP_DATA valEnd;
00069    MP_CURVE_TYPE iCurve;
00070    MP_FLAGS flags;
00071 } MP_ENVELOPE_SEGMENT;
00072 
00073 
00074 const MP_FLAGS MPF_PUNCHIN_REFTIME = 0;
00075 const MP_FLAGS MPF_PUNCHIN_NOW = 0x0001;
00076 const MP_FLAGS MPF_PUNCHIN_STOPPED = 0x0002;
00077 
00078 [
00079 object,
00080 uuid(6d6cbb60-a223-44aa-842f-a2f06750be6d),
00081 version(1.0)
00082 ]
00083 interface IMediaParamInfo : IUnknown
00084 {
00085     HRESULT GetParamCount ([out] DWORD * pdwParams);
00086     HRESULT GetParamInfo ([in] DWORD dwParamIndex, [out] MP_PARAMINFO * pInfo);
00087     HRESULT GetParamText ([in] DWORD dwParamIndex, [out] WCHAR **ppwchText);
00088     HRESULT GetNumTimeFormats ([out] DWORD * pdwNumTimeFormats);
00089     HRESULT GetSupportedTimeFormat([in] DWORD dwFormatIndex, [out] GUID *pguidTimeFormat);
00090     HRESULT GetCurrentTimeFormat ([out] GUID *pguidTimeFormat, [out] MP_TIMEDATA *pTimeData);
00091 }
00092 
00093 [
00094 object,
00095 uuid(6d6cbb61-a223-44aa-842f-a2f06750be6e),
00096 version(1.0)
00097 ]
00098 interface IMediaParams : IUnknown
00099 {
00100     HRESULT GetParam ([in] DWORD dwParamIndex, [out] MP_DATA *pValue);
00101     HRESULT SetParam ([in] DWORD dwParamIndex, [in] MP_DATA value);
00102     HRESULT AddEnvelope ([in] DWORD dwParamIndex, [in] DWORD cSegments, [in]  MP_ENVELOPE_SEGMENT * pEnvelopeSegments);
00103     HRESULT FlushEnvelope ([in] DWORD dwParamIndex, [in] REFERENCE_TIME refTimeStart, [in] REFERENCE_TIME refTimeEnd);
00104     HRESULT SetTimeFormat ([in] GUID guidTimeFormat, [in] MP_TIMEDATA mpTimeData);
00105 }
00106 

Generated on Wed May 23 2012 04:28:40 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.