tdf#130857 qt weld: Implement QtInstanceWidget::strip_mnemonic
[LibreOffice.git] / avmedia / source / win / interface.hxx
bloba52c6ab1f36c337326e162639b77b20de116720d
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #pragma once
22 extern "C" const CLSID CLSID_MediaDet;
23 extern "C" const IID IID_IMediaDet;
24 struct ISampleGrabber;
26 struct
27 __declspec(uuid("65BD0710-24D2-4ff7-9324-ED2E5D3ABAFA")) __declspec(novtable)
28 IMediaDet : public IUnknown
30 public:
31 virtual HRESULT __stdcall get_Filter(
32 IUnknown **pVal) = 0;
33 virtual HRESULT __stdcall put_Filter(
34 IUnknown *newVal) = 0;
35 virtual HRESULT __stdcall get_OutputStreams(
36 long *pVal) = 0;
37 virtual HRESULT __stdcall get_CurrentStream(
38 long *pVal) = 0;
39 virtual HRESULT __stdcall put_CurrentStream(
40 long newVal) = 0;
41 virtual HRESULT __stdcall get_StreamType(
42 GUID *pVal) = 0;
43 virtual HRESULT __stdcall get_StreamTypeB(
44 BSTR *pVal) = 0;
45 virtual HRESULT __stdcall get_StreamLength(
46 double *pVal) = 0;
47 virtual HRESULT __stdcall get_Filename(
48 BSTR *pVal) = 0;
49 virtual HRESULT __stdcall put_Filename(
50 BSTR newVal) = 0;
51 virtual HRESULT __stdcall GetBitmapBits(
52 double StreamTime,
53 long *pBufferSize,
54 char *pBuffer,
55 long Width,
56 long Height) = 0;
57 virtual HRESULT __stdcall WriteBitmapBits(
58 double StreamTime,
59 long Width,
60 long Height,
61 BSTR Filename) = 0;
62 virtual HRESULT __stdcall get_StreamMediaType(
63 AM_MEDIA_TYPE *pVal) = 0;
64 virtual HRESULT __stdcall GetSampleGrabber(
65 ISampleGrabber **ppVal) = 0;
66 virtual HRESULT __stdcall get_FrameRate(
67 double *pVal) = 0;
68 virtual HRESULT __stdcall EnterBitmapGrabMode(
69 double SeekTime) = 0;
71 protected:
72 ~IMediaDet() {}
75 extern "C" const IID IID_ISampleGrabberCB;
76 struct
77 __declspec(uuid("0579154A-2B53-4994-B0D0-E773148EFF85")) __declspec(novtable)
78 ISampleGrabberCB : public IUnknown
80 public:
81 virtual HRESULT __stdcall SampleCB(
82 double SampleTime,
83 IMediaSample *pSample) = 0;
84 virtual HRESULT __stdcall BufferCB(
85 double SampleTime,
86 BYTE *pBuffer,
87 long BufferLen) = 0;
89 protected:
90 ~ISampleGrabberCB() {}
93 extern "C" const IID IID_ISampleGrabber;
94 struct
95 __declspec(uuid("6B652FFF-11FE-4fce-92AD-0266B5D7C78F")) __declspec(novtable)
96 ISampleGrabber : public IUnknown
98 public:
99 virtual HRESULT __stdcall SetOneShot(
100 BOOL OneShot) = 0;
101 virtual HRESULT __stdcall SetMediaType(
102 const AM_MEDIA_TYPE *pType) = 0;
103 virtual HRESULT __stdcall GetConnectedMediaType(
104 AM_MEDIA_TYPE *pType) = 0;
105 virtual HRESULT __stdcall SetBufferSamples(
106 BOOL BufferThem) = 0;
107 virtual HRESULT __stdcall GetCurrentBuffer(
108 long *pBufferSize,
109 long *pBuffer) = 0;
110 virtual HRESULT __stdcall GetCurrentSample(
111 IMediaSample **ppSample) = 0;
112 virtual HRESULT __stdcall SetCallback(
113 ISampleGrabberCB *pCallback,
114 long WhichMethodToCallback) = 0;
116 protected:
117 ~ISampleGrabber() {}
120 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */