~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Wine Cross Reference
wine/include/activdbg.idl

Version: ~ [ wine-1.1.33 ] ~ [ wine-1.1.32 ] ~ [ wine-1.1.31 ] ~ [ wine-1.1.30 ] ~ [ wine-1.1.29 ] ~ [ wine-1.1.28 ] ~ [ wine-1.1.27 ] ~ [ wine-1.1.26 ] ~ [ wine-1.1.25 ] ~ [ wine-1.1.24 ] ~ [ wine-1.1.23 ] ~ [ wine-1.1.22 ] ~ [ wine-1.1.21 ] ~ [ wine-1.1.20 ] ~ [ wine-1.1.19 ] ~ [ wine-1.1.18 ] ~ [ wine-1.1.17 ] ~ [ wine-1.1.16 ] ~ [ wine-1.1.15 ] ~ [ wine-1.1.14 ] ~ [ wine-1.1.13 ] ~ [ wine-1.1.12 ] ~ [ wine-1.1.11 ] ~ [ wine-1.1.10 ] ~ [ wine-1.1.9 ] ~ [ wine-1.1.8 ] ~ [ wine-1.1.7 ] ~ [ wine-1.0.1 ] ~ [ wine-1.1.6 ] ~ [ wine-1.1.5 ] ~ [ wine-1.1.4 ] ~ [ wine-1.1.3 ] ~ [ wine-1.1.2 ] ~ [ wine-1.1.1 ] ~ [ wine-1.1.0 ] ~ [ wine-1.0 ] ~

  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 import "ocidl.idl";
 20 import "activscp.idl";
 21 /* import "dbgprop.idl"; */
 22 
 23 interface IDebugDocumentContext;
 24 interface IRemoteDebugApplication;
 25 interface IEnumDebugCodeContexts;
 26 
 27 /* FIXME: */
 28 interface IEnumDebugStackFrames;
 29 interface IDebugStackFrame;
 30 interface IApplicationDebugger;
 31 interface IEnumRemoteDebugApplicationThreads;
 32 interface IDebugApplicationNode;
 33 interface IEnumDebugExpressionContexts;
 34 interface IDebugApplicationThread;
 35 interface IDebugSyncOperation;
 36 interface IDebugAsyncOperation;
 37 interface IDebugStackFrameSniffer;
 38 interface IDebugThreadCall32;
 39 interface IActiveScriptErrorDebug;
 40 interface IProvideExpressionContexts;
 41 
 42 typedef enum tagBREAKPOINT_STATE {
 43     BREAKPOINT_DELETED,
 44     BREAKPOINT_DISABLED,
 45     BREAKPOINT_ENABLED
 46 } BREAKPOINT_STATE;
 47 
 48 typedef DWORD APPBREAKFLAGS;
 49 
 50 typedef 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 
 61 typedef 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 
 70 typedef enum tagDOCUMENTNAMETYPE {
 71     DOCUMENTNAMETYPE_APPNODE,
 72     DOCUMENTNAMETYPE_TITLE,
 73     DOCUMENTNAMETYPE_FILE_TAIL,
 74     DOCUMENTNAMETYPE_URL
 75 } DOCUMENTNAMETYPE;
 76 
 77 typedef enum tagERRORRESUMEACTION {
 78     ERRORRESUMEACTION_ReexecuteErrorStatement,
 79     ERRORRESUMEACTION_AbortCallAndReturnErrorToCaller,
 80     ERRORRESUMEACTION_SkipErrorStatement,
 81 } ERRORRESUMEACTION;
 82 
 83 typedef WORD SOURCE_TEXT_ATTR;
 84 
 85 #ifdef INTEROPLIB
 86 enum 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 
 98 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_KEYWORD         = 0x01;
 99 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_COMMENT         = 0x02;
100 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NONSOURCE       = 0x04;
101 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_OPERATOR        = 0x08;
102 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_NUMBER          = 0x10;
103 const SOURCE_TEXT_ATTR SOURCETEXT_ATTR_STRING          = 0x20;
104 const 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 ]
114 interface 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 ]
142 interface 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 ]
173 interface 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 ]
191 interface 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 ]
203 interface 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 ]
220 interface 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 ]
244 interface 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 ]
261 interface 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 ]
301 interface 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 ]
349 interface 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     HRESULT GetCurrentThread(
372             [out] IDebugApplicationThread **pat);
373 
374     HRESULT CreateAsyncDebugOperation(
375             [in]  IDebugSyncOperation *psdo,
376             [out] IDebugAsyncOperation **ppado);
377 
378     HRESULT AddStackFrameSniffer(
379             [in]  IDebugStackFrameSniffer *pdsfs,
380             [out] DWORD *pdwCookie);
381 
382     HRESULT RemoveStackFrameSniffer(
383             [in]  DWORD dwCookie);
384 
385     HRESULT QueryCurrentThreadIsDebuggerThread();
386 
387     HRESULT SynchronousCallInDebuggerThread(
388             [in]  IDebugThreadCall32 *pptc,
389             [in]  DWORD dwParam1,
390             [in]  DWORD dwParam2,
391             [in]  DWORD dwParam3);
392 
393     HRESULT CreateApplicationNode(
394             [out] IDebugApplicationNode **ppdanNew);
395 
396     HRESULT FireDebuggerEvent(
397             [in]  REFGUID riid,
398             [in]  IUnknown *punk);
399 
400     HRESULT HandleRuntimeError(
401             [in]  IActiveScriptErrorDebug *pErrorDebug,
402             [in]  IActiveScriptSite *pScriptSite,
403             [out] BREAKRESUMEACTION *pbra,
404             [out] ERRORRESUMEACTION *perra,
405             [out] BOOL *pfCallOnScriptError);
406 
407     BOOL FCanJitDebug();
408 
409     BOOL FIsAutoJitDebugEnabled();
410 
411     HRESULT AddGlobalExpressionContextProvider(
412             [in]  IProvideExpressionContexts *pdsfs,
413             [out] DWORD *pdwCookie);
414 
415     HRESULT RemoveGlobalExpressionContextProvider(
416             [in]  DWORD dwCookie);
417 }
418 
419 /************************************************************
420  *      interface IDebugApplication64
421  */
422 [
423     object,
424     uuid(4dedc754-04c7-4f10-9e60-16a390fe6e62),
425     pointer_default(unique),
426     local
427 ]
428 interface IDebugApplication64 : IRemoteDebugApplication
429 {
430     HRESULT SetName(
431             [in] LPCOLESTR pstrName);
432 
433     HRESULT StepOutComplete();
434 
435     HRESULT DebugOutput(
436             [in] LPCOLESTR pstr);
437 
438     HRESULT StartDebugSession();
439 
440     HRESULT HandleBreakPoint(
441             [in]  BREAKREASON br,
442             [out] BREAKRESUMEACTION *pbra);
443 
444     HRESULT Close();
445 
446     HRESULT GetBreakFlags(
447             [out] APPBREAKFLAGS *pabf,
448             [out] IRemoteDebugApplicationThread **pprdatSteppingThread);
449 
450     HRESULT GetCurrentThread(
451             [out] IDebugApplicationThread **pat);
452 
453     HRESULT CreateAsyncDebugOperation(
454             [in]  IDebugSyncOperation *psdo,
455             [out] IDebugAsyncOperation **ppado);
456 
457     HRESULT AddStackFrameSniffer(
458             [in]  IDebugStackFrameSniffer *pdsfs,
459             [out] DWORD *pdwCookie);
460 
461     HRESULT RemoveStackFrameSniffer(
462             [in]  DWORD dwCookie);
463 
464     HRESULT QueryCurrentThreadIsDebuggerThread();
465 
466     HRESULT SynchronousCallInDebuggerThread(
467             [in]  IDebugThreadCall32 *pptc,
468             [in]  DWORDLONG dwParam1,
469             [in]  DWORDLONG dwParam2,
470             [in]  DWORDLONG dwParam3);
471 
472     HRESULT CreateApplicationNode(
473             [out] IDebugApplicationNode **ppdanNew);
474 
475     HRESULT FireDebuggerEvent(
476             [in]  REFGUID riid,
477             [in]  IUnknown *punk);
478 
479     HRESULT HandleRuntimeError(
480             [in]  IActiveScriptErrorDebug *pErrorDebug,
481             [in]  IActiveScriptSite *pScriptSite,
482             [out] BREAKRESUMEACTION *pbra,
483             [out] ERRORRESUMEACTION *perra,
484             [out] BOOL *pfCallOnScriptError);
485 
486     BOOL FCanJitDebug();
487 
488     BOOL FIsAutoJitDebugEnabled();
489 
490     HRESULT AddGlobalExpressionContextProvider(
491             [in]  IProvideExpressionContexts *pdsfs,
492             [out] DWORDLONG *pdwCookie);
493 
494     HRESULT RemoveGlobalExpressionContextProvider(
495             [in]  DWORDLONG dwCookie);
496 }
497 
498 /************************************************************
499  *      interface IActiveScriptSiteDebug32
500  */
501 [
502     object,
503     uuid(51973c11-cb0c-11d0-b5c9-00a0244a0e7a),
504     pointer_default(unique),
505     local
506 ]
507 interface IActiveScriptSiteDebug32 : IUnknown
508 {
509     HRESULT GetDocumentContextFromPosition(
510             [in]  DWORD dwSourceContext,
511             [in]  ULONG uCharacterOffset,
512             [in]  ULONG uNumChars,
513             [out] IDebugDocumentContext **ppsc);
514 
515     HRESULT GetApplication(
516             [out] IDebugApplication32 **ppda);
517 
518     HRESULT GetRootApplicationNode(
519             [out] IDebugApplicationNode **ppdanRoot);
520 
521     HRESULT OnScriptErrorDebug(
522             [in]  IActiveScriptErrorDebug *pErrorDebug,
523             [out] BOOL *pfEnterDebugger,
524             [out] BOOL *pfCallOnScriptErrorWhenContinuing);
525 }
526 
527 /************************************************************
528  *      interface IActiveScriptSiteDebug64
529  */
530 [
531     object,
532     uuid(d6b96b0a-7463-402c-92ac-89984226942f),
533     pointer_default(unique),
534     local
535 ]
536 interface IActiveScriptSiteDebug64 : IUnknown
537 {
538     HRESULT GetDocumentContextFromPosition(
539             [in]  DWORDLONG dwSourceContext,
540             [in]  ULONG uCharacterOffset,
541             [in]  ULONG uNumChars,
542             [out] IDebugDocumentContext **ppsc);
543 
544     HRESULT GetApplication(
545             [out] IDebugApplication64 **ppda);
546 
547     HRESULT GetRootApplicationNode(
548             [out] IDebugApplicationNode **ppdanRoot);
549 
550     HRESULT OnScriptErrorDebug(
551             [in]  IActiveScriptErrorDebug *pErrorDebug,
552             [out] BOOL *pfEnterDebugger,
553             [out] BOOL *pfCallOnScriptErrorWhenContinuing);
554 }
555 
556 cpp_quote("#ifndef DISABLE_ACTIVDBG_INTERFACE_WRAPPERS")
557 cpp_quote("#ifdef _WIN64")
558 
559 cpp_quote("#define IActiveScriptDebug IActiveScriptDebug64")
560 cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug64")
561 
562 cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug64")
563 cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug64")
564 
565 cpp_quote("#define IDebugApplication IDebugApplication64")
566 cpp_quote("#define IID_IDebugApplication IID_IDebugApplication64")
567 
568 cpp_quote("#else")
569 
570 cpp_quote("#define IActiveScriptDebug IActiveScriptDebug32")
571 cpp_quote("#define IID_IActiveScriptDebug IID_IActiveScriptDebug32")
572 
573 cpp_quote("#define IActiveScriptSiteDebug IActiveScriptSiteDebug32")
574 cpp_quote("#define IID_IActiveScriptSiteDebug IID_IActiveScriptSiteDebug32")
575 
576 cpp_quote("#define IDebugApplication IDebugApplication32")
577 cpp_quote("#define IID_IDebugApplication IID_IDebugApplication32")
578 
579 cpp_quote("#endif")
580 cpp_quote("#endif")

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.