VirtualBox

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

Last change on this file since 69505 was 53206, checked in by vboxsync, 10 years ago

Devices/vmsvga: header fixes

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

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