VirtualBox

source: vbox/trunk/src/VBox/Devices/Graphics/shaderlib/wine/include/activdbg.idl@ 53201

最後變更 在這個檔案從53201是 53201,由 vboxsync 提交於 10 年 前

Devices/Main: vmsvga updates

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 16.0 KB
 
1/*
2 * Copyright 2008 Jacek Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19import "ocidl.idl";
20import "activscp.idl";
21/* import "dbgprop.idl"; */
22
23interface IDebugDocumentContext;
24interface IRemoteDebugApplication;
25interface IEnumDebugCodeContexts;
26
27/* FIXME: */
28interface IEnumDebugStackFrames;
29interface IDebugStackFrame;
30interface IApplicationDebugger;
31interface IEnumRemoteDebugApplicationThreads;
32interface IDebugApplicationNode;
33interface IEnumDebugExpressionContexts;
34interface IDebugApplicationThread;
35interface IDebugSyncOperation;
36interface IDebugAsyncOperation;
37interface IDebugStackFrameSniffer;
38interface IDebugThreadCall32;
39interface IActiveScriptErrorDebug;
40interface IProvideExpressionContexts;
41
42typedef enum tagBREAKPOINT_STATE {
43 BREAKPOINT_DELETED,
44 BREAKPOINT_DISABLED,
45 BREAKPOINT_ENABLED
46} BREAKPOINT_STATE;
47
48typedef DWORD APPBREAKFLAGS;
49
50typedef enum tagBREAKREASON {
51 BREAKREASON_STEP,
52 BREAKREASON_BREAKPOINT,
53 BREAKREASON_DEBUGGER_BLOCK,
54 BREAKREASON_HOST_INITIATED,
55 BREAKREASON_LANGUAGE_INITIATED,
56 BREAKREASON_DEBUGGER_HALT,
57 BREAKREASON_ERROR,
58 BREAKREASON_JIT
59} BREAKREASON;
60
61typedef enum tagBREAKRESUME_ACTION {
62 BREAKRESUMEACTION_ABORT,
63 BREAKRESUMEACTION_CONTINUE,
64 BREAKRESUMEACTION_STEP_INTO,
65 BREAKRESUMEACTION_STEP_OVER,
66 BREAKRESUMEACTION_STEP_OUT,
67 BREAKRESUMEACTION_IGNORE
68} BREAKRESUMEACTION;
69
70typedef enum tagDOCUMENTNAMETYPE {
71 DOCUMENTNAMETYPE_APPNODE,
72 DOCUMENTNAMETYPE_TITLE,
73 DOCUMENTNAMETYPE_FILE_TAIL,
74 DOCUMENTNAMETYPE_URL
75} DOCUMENTNAMETYPE;
76
77typedef enum tagERRORRESUMEACTION {
78 ERRORRESUMEACTION_ReexecuteErrorStatement,
79 ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller,
80 ERRORRESUMEACTION_SkipErrorStatement,
81} ERRORRESUMEACTION;
82
83typedef WORD SOURCE_TEXT_ATTR;
84
85#ifdef INTEROPLIB
86enum enum_SOURCE_TEXT_ATTR
87{
88 SOURCETEXT_ATTR_KEYWORD = 0x01,
89 SOURCETEXT_ATTR_COMMENT = 0x02,
90 SOURCETEXT_ATTR_NONSOURCE = 0x04,
91 SOURCETEXT_ATTR_OPERATOR = 0x08,
92 SOURCETEXT_ATTR_NUMBER = 0x10,
93 SOURCETEXT_ATTR_STRING = 0x20,
94 SOURCETEXT_ATTR_FUNCTION_START = 0x40
95};
96#endif
97
98const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_KEYWORD = 0x01;
99const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_COMMENT = 0x02;
100const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NONSOURCE = 0x04;
101const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_OPERATOR = 0x08;
102const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NUMBER = 0x10;
103const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_STRING = 0x20;
104const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_FUNCTION_START = 0x40;
105
106/************************************************************
107 * interface IActiveScriptDebug32
108 */
109[
110 object,
111 uuid(51973c10-cb0c-11d0-b5c9-00a0244a0e7a),
112 pointer_default(unique)
113]
114interface IActiveScriptDebug32 : IUnknown
115{
116 HRESULT GetScriptTextAttributes(
117 [in, size_is(uNumCodeChars)] LPCOLESTR pstrCode,
118 [in] ULONG uNumCodeChars,
119 [in] LPCOLESTR pstrDelimiter,
120 [in] DWORD dwFlags,
121 [in, out, size_is(uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
122
123 HRESULT GetScriptletTextAttributes(
124 [in, size_is(uNumCodeChars)] LPCOLESTR pstrCode,
125 [in] ULONG uNumCodeChars,
126 [in] LPCOLESTR pstrDelimiter,
127 [in] DWORD dwFlags,
128 [in, out, size_is(uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
129
130 HRESULT EnumCodeContextsOfPosition(
131 [in] DWORD dwSourceContext,
132 [in] ULONG uCharacterOffset,
133 [in] ULONG uNumChars,
134 [out] IEnumDebugCodeContexts **ppescc);
135}
136
137[
138 object,
139 uuid(bc437e23-f5b8-47f4-bb79-7d1ce5483b86),
140 pointer_default(unique)
141]
142interface IActiveScriptDebug64 : IUnknown
143{
144 HRESULT GetScriptTextAttributes(
145 [in, size_is(uNumCodeChars)] LPCOLESTR pstrCode,
146 [in] ULONG uNumCodeChars,
147 [in] LPCOLESTR pstrDelimiter,
148 [in] DWORD dwFlags,
149 [in, out, size_is(uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
150
151 HRESULT GetScriptletTextAttributes(
152 [in, size_is(uNumCodeChars)] LPCOLESTR pstrCode,
153 [in] ULONG uNumCodeChars,
154 [in] LPCOLESTR pstrDelimiter,
155 [in] DWORD dwFlags,
156 [in, out, size_is(uNumCodeChars)] SOURCE_TEXT_ATTR *pattr);
157
158 HRESULT EnumCodeContextsOfPosition(
159 [in] DWORDLONG dwSourceContext,
160 [in] ULONG uCharacterOffset,
161 [in] ULONG uNumChars,
162 [out] IEnumDebugCodeContexts **ppescc);
163}
164
165/************************************************************
166 * interface IDebugDocumentInfo
167 */
168[
169 object,
170 uuid(51973c1f-cb0c-11d0-b5c9-00a0244a0e7a),
171 pointer_default(unique)
172]
173interface IDebugDocumentInfo : IUnknown
174{
175 HRESULT GetName(
176 [in] DOCUMENTNAMETYPE dnt,
177 [out] BSTR *pbstrName);
178
179 HRESULT GetDocumentClassId(
180 [out] CLSID *pclsidDocument);
181}
182
183/************************************************************
184 * interface IDebugDocument
185 */
186[
187 object,
188 uuid(51973c21-cb0c-11d0-b5c9-00a0244a0e7a),
189 pointer_default(unique)
190]
191interface IDebugDocument : IDebugDocumentInfo
192{
193}
194
195/************************************************************
196 * interface IDebugCodeContext
197 */
198[
199 object,
200 uuid(51973c13-cb0c-11d0-b5c9-00a0244a0e7a),
201 pointer_default(unique)
202]
203interface IDebugCodeContext : IUnknown
204{
205 HRESULT GetDocumentContext(
206 [out] IDebugDocumentContext **ppsc);
207
208 HRESULT SetBreakPoint(
209 [in] BREAKPOINT_STATE bps);
210}
211
212/************************************************************
213 * interface IEnumDebugCodeContexts
214 */
215[
216 object,
217 uuid(51973c1d-cb0c-11d0-b5c9-00a0244a0e7a),
218 pointer_default(unique)
219]
220interface IEnumDebugCodeContexts : IUnknown
221{
222 HRESULT Next(
223 [in] ULONG celt,
224 [out] IDebugCodeContext **pscc,
225 [out] ULONG *pceltFetched);
226
227 HRESULT Skip(
228 [in] ULONG celt);
229
230 HRESULT Reset();
231
232 HRESULT Clone(
233 [out] IEnumDebugCodeContexts **ppescc);
234}
235
236/************************************************************
237 * interface IDebugDocumentContext
238 */
239[
240 object,
241 uuid(51973c28-cb0c-11d0-b5c9-00a0244a0e7a),
242 pointer_default(unique)
243]
244interface IDebugDocumentContext : IUnknown
245{
246 HRESULT GetDocument(
247 [out] IDebugDocument **ppsd);
248
249 HRESULT EnumCodeContexts(
250 [out] IEnumDebugCodeContexts **ppescc);
251}
252
253/************************************************************
254 * interface IRemoteDebugApplicationThread
255 */
256[
257 object,
258 uuid(51973c37-cb0c-11d0-b5c9-00a0244a0e7a),
259 pointer_default(unique)
260]
261interface IRemoteDebugApplicationThread : IUnknown
262{
263 HRESULT GetSystemThreadId(
264 [out] DWORD *dwThreadId);
265
266 HRESULT GetApplication(
267 [out] IRemoteDebugApplication **pprda);
268
269 HRESULT EnumStackFrames(
270 [out] IEnumDebugStackFrames **ppedsf);
271
272 HRESULT GetDescription(
273 [out] BSTR *pbstrDescription,
274 [out] BSTR *pbstrState);
275
276 HRESULT SetNextStatement(
277 [in] IDebugStackFrame *pStackFrame,
278 [in] IDebugCodeContext *pCodeContext);
279
280 HRESULT GetState(
281 [out] DWORD *pState);
282
283 HRESULT Suspend(
284 [out] DWORD *pdwCount);
285
286 HRESULT Resume(
287 [out] DWORD *pdwCount);
288
289 HRESULT GetSuspendCount(
290 [out] DWORD *pdwCount);
291}
292
293/************************************************************
294 * interface IRemoteDebugApplication
295 */
296[
297 object,
298 uuid(51973c30-cb0c-11d0-b5c9-00a0244Aae7a),
299 pointer_default(unique)
300]
301interface IRemoteDebugApplication : IUnknown
302{
303 HRESULT ResumeFromBreakPoint(
304 [in] IRemoteDebugApplicationThread *prptFocus,
305 [in] BREAKRESUMEACTION bra,
306 [in] ERRORRESUMEACTION era);
307
308 HRESULT CauseBreak();
309
310 HRESULT ConnectDebugger(
311 [in] IApplicationDebugger *pad);
312
313 HRESULT DisconnectDebugger();
314
315 HRESULT GetDebugger(
316 [out] IApplicationDebugger **pad);
317
318 HRESULT CreateInstanceAtApplication(
319 [in] REFCLSID rclsid,
320 [in] IUnknown *pUnkOuter,
321 [in] DWORD dwClsContext,
322 [in] REFIID riid,
323 [out, iid_is(riid)] IUnknown **ppvObject);
324
325 HRESULT QueryAlive();
326
327 HRESULT EnumThreads(
328 [out] IEnumRemoteDebugApplicationThreads **pperdat);
329
330 HRESULT GetName(
331 [out] BSTR *pbstrName);
332
333 HRESULT GetRootNode(
334 [out] IDebugApplicationNode **ppdanRoot);
335
336 HRESULT EnumGlobalExpressionContexts(
337 [out] IEnumDebugExpressionContexts **ppedec);
338}
339
340/************************************************************
341 * interface IDebugApplication32
342 */
343[
344 object,
345 uuid(51973c32-cb0c-11d0-b5c9-00a0244a0e7a),
346 pointer_default(unique),
347 local
348]
349interface IDebugApplication32 : IRemoteDebugApplication
350{
351 HRESULT SetName(
352 [in] LPCOLESTR pstrName);
353
354 HRESULT StepOutComplete();
355
356 HRESULT DebugOutput(
357 [in] LPCOLESTR pstr);
358
359 HRESULT StartDebugSession();
360
361 HRESULT HandleBreakPoint(
362 [in] BREAKREASON br,
363 [out] BREAKRESUMEACTION *pbra);
364
365 HRESULT Close();
366
367 HRESULT GetBreakFlags(
368 [out] APPBREAKFLAGS *pabf,
369 [out] IRemoteDebugApplicationThread **pprdatSteppingThread);
370
371 cpp_quote("#undef GetCurrentThread")
372 HRESULT GetCurrentThread(
373 [out] IDebugApplicationThread **pat);
374
375 HRESULT CreateAsyncDebugOperation(
376 [in] IDebugSyncOperation *psdo,
377 [out] IDebugAsyncOperation **ppado);
378
379 HRESULT AddStackFrameSniffer(
380 [in] IDebugStackFrameSniffer *pdsfs,
381 [out] DWORD *pdwCookie);
382
383 HRESULT RemoveStackFrameSniffer(
384 [in] DWORD dwCookie);
385
386 HRESULT QueryCurrentThreadIsDebuggerThread();
387
388 HRESULT SynchronousCallInDebuggerThread(
389 [in] IDebugThreadCall32 *pptc,
390 [in] DWORD dwParam1,
391 [in] DWORD dwParam2,
392 [in] DWORD dwParam3);
393
394 HRESULT CreateApplicationNode(
395 [out] IDebugApplicationNode **ppdanNew);
396
397 HRESULT FireDebuggerEvent(
398 [in] REFGUID riid,
399 [in] IUnknown *punk);
400
401 HRESULT HandleRuntimeError(
402 [in] IActiveScriptErrorDebug *pErrorDebug,
403 [in] IActiveScriptSite *pScriptSite,
404 [out] BREAKRESUMEACTION *pbra,
405 [out] ERRORRESUMEACTION *perra,
406 [out] BOOL *pfCallOnScriptError);
407
408 BOOL FCanJitDebug();
409
410 BOOL FIsAutoJitDebugEnabled();
411
412 HRESULT AddGlobalExpressionContextProvider(
413 [in] IProvideExpressionContexts *pdsfs,
414 [out] DWORD *pdwCookie);
415
416 HRESULT RemoveGlobalExpressionContextProvider(
417 [in] DWORD dwCookie);
418}
419
420/************************************************************
421 * interface IDebugApplication64
422 */
423[
424 object,
425 uuid(4dedc754-04c7-4f10-9e60-16a390fe6e62),
426 pointer_default(unique),
427 local
428]
429interface IDebugApplication64 : IRemoteDebugApplication
430{
431 HRESULT SetName(
432 [in] LPCOLESTR pstrName);
433
434 HRESULT StepOutComplete();
435
436 HRESULT DebugOutput(
437 [in] LPCOLESTR pstr);
438
439 HRESULT StartDebugSession();
440
441 HRESULT HandleBreakPoint(
442 [in] BREAKREASON br,
443 [out] BREAKRESUMEACTION *pbra);
444
445 HRESULT Close();
446
447 HRESULT GetBreakFlags(
448 [out] APPBREAKFLAGS *pabf,
449 [out] IRemoteDebugApplicationThread **pprdatSteppingThread);
450
451 HRESULT GetCurrentThread(
452 [out] IDebugApplicationThread **pat);
453
454 HRESULT CreateAsyncDebugOperation(
455 [in] IDebugSyncOperation *psdo,
456 [out] IDebugAsyncOperation **ppado);
457
458 HRESULT AddStackFrameSniffer(
459 [in] IDebugStackFrameSniffer *pdsfs,
460 [out] DWORD *pdwCookie);
461
462 HRESULT RemoveStackFrameSniffer(
463 [in] DWORD dwCookie);
464
465 HRESULT QueryCurrentThreadIsDebuggerThread();
466
467 HRESULT SynchronousCallInDebuggerThread(
468 [in] IDebugThreadCall32 *pptc,
469 [in] DWORDLONG dwParam1,
470 [in] DWORDLONG dwParam2,
471 [in] DWORDLONG dwParam3);
472
473 HRESULT CreateApplicationNode(
474 [out] IDebugApplicationNode **ppdanNew);
475
476 HRESULT FireDebuggerEvent(
477 [in] REFGUID riid,
478 [in] IUnknown *punk);
479
480 HRESULT HandleRuntimeError(
481 [in] IActiveScriptErrorDebug *pErrorDebug,
482 [in] IActiveScriptSite *pScriptSite,
483 [out] BREAKRESUMEACTION *pbra,
484 [out] ERRORRESUMEACTION *perra,
485 [out] BOOL *pfCallOnScriptError);
486
487 BOOL FCanJitDebug();
488
489 BOOL FIsAutoJitDebugEnabled();
490
491 HRESULT AddGlobalExpressionContextProvider(
492 [in] IProvideExpressionContexts *pdsfs,
493 [out] DWORDLONG *pdwCookie);
494
495 HRESULT RemoveGlobalExpressionContextProvider(
496 [in] DWORDLONG dwCookie);
497}
498
499/************************************************************
500 * interface IActiveScriptSiteDebug32
501 */
502[
503 object,
504 uuid(51973c11-cb0c-11d0-b5c9-00a0244a0e7a),
505 pointer_default(unique),
506 local
507]
508interface IActiveScriptSiteDebug32 : IUnknown
509{
510 HRESULT GetDocumentContextFromPosition(
511 [in] DWORD dwSourceContext,
512 [in] ULONG uCharacterOffset,
513 [in] ULONG uNumChars,
514 [out] IDebugDocumentContext **ppsc);
515
516 HRESULT GetApplication(
517 [out] IDebugApplication32 **ppda);
518
519 HRESULT GetRootApplicationNode(
520 [out] IDebugApplicationNode **ppdanRoot);
521
522 HRESULT OnScriptErrorDebug(
523 [in] IActiveScriptErrorDebug *pErrorDebug,
524 [out] BOOL *pfEnterDebugger,
525 [out] BOOL *pfCallOnScriptErrorWhenContinuing);
526}
527
528/************************************************************
529 * interface IActiveScriptSiteDebug64
530 */
531[
532 object,
533 uuid(d6b96b0a-7463-402c-92ac-89984226942f),
534 pointer_default(unique),
535 local
536]
537interface IActiveScriptSiteDebug64 : IUnknown
538{
539 HRESULT GetDocumentContextFromPosition(
540 [in] DWORDLONG dwSourceContext,
541 [in] ULONG uCharacterOffset,
542 [in] ULONG uNumChars,
543 [out] IDebugDocumentContext **ppsc);
544
545 HRESULT GetApplication(
546 [out] IDebugApplication64 **ppda);
547
548 HRESULT GetRootApplicationNode(
549 [out] IDebugApplicationNode **ppdanRoot);
550
551 HRESULT OnScriptErrorDebug(
552 [in] IActiveScriptErrorDebug *pErrorDebug,
553 [out] BOOL *pfEnterDebugger,
554 [out] BOOL *pfCallOnScriptErrorWhenContinuing);
555}
556
557cpp_quote("#ifndef DISABLE_ACTIVDBG_INTERFACE_WRAPPERS")
558cpp_quote("#ifdef _WIN64")
559
560cpp_quote("#define IActiveScriptDebug IActiveScriptDebug64")
561cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug64")
562
563cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug64")
564cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug64")
565
566cpp_quote("#define IDebugApplication IDebugApplication64")
567cpp_quote("#define IID_IDebugApplication IID_IDebugApplication64")
568
569cpp_quote("#else")
570
571cpp_quote("#define IActiveScriptDebug IActiveScriptDebug32")
572cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug32")
573
574cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug32")
575cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug32")
576
577cpp_quote("#define IDebugApplication IDebugApplication32")
578cpp_quote("#define IID_IDebugApplication IID_IDebugApplication32")
579
580cpp_quote("#endif")
581cpp_quote("#endif")
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette