Ruby: ext/win32ole/win32ole_event.c File Reference

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

Data Structures | Typedefs | Functions | Variables
win32ole_event.c File Reference
`#include "win32ole.h"`

Go to the source code of this file.

## Data Structures
struct | IEventSink
struct | IEventSinkVtbl
struct | tagIEVENTSINKOBJ
struct | oleeventdata

## Typedefs
typedef struct IEventSink * | PEVENTSINK
typedef struct IEventSinkVtbl | IEventSinkVtbl
typedef struct tagIEVENTSINKOBJ | IEVENTSINKOBJ
typedef struct tagIEVENTSINKOBJ * | PIEVENTSINKOBJ

## Functions
void | rb_write_error_str (VALUE mesg)
STDMETHODIMP | EVENTSINK_QueryInterface (PEVENTSINK, REFIID, LPVOID *)
| STDMETHODIMP_ (ULONG)
void | EVENTSINK_Destructor (PIEVENTSINKOBJ)
STDMETHODIMP | EVENTSINK_Invoke (PEVENTSINK pEventSink, DISPID dispid, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pdispparams, VARIANT *pvarResult, EXCEPINFO *pexcepinfo, UINT *puArgErr)
| EVENTSINK_AddRef (PEVENTSINK pEV)
STDMETHODIMP | EVENTSINK_GetTypeInfoCount (PEVENTSINK pEV, UINT *pct)
STDMETHODIMP | EVENTSINK_GetTypeInfo (PEVENTSINK pEV, UINT info, LCID lcid, ITypeInfo **pInfo)
STDMETHODIMP | EVENTSINK_GetIDsOfNames (PEVENTSINK pEventSink, REFIID riid, OLECHAR **szNames, UINT cNames, LCID lcid, DISPID *pDispID)
PIEVENTSINKOBJ | EVENTSINK_Constructor (void)
void | Init_win32ole_event (void)

## Variables
VALUE | cWIN32OLE_EVENT

## Typedef Documentation

## ◆ IEVENTSINKOBJ

typedef struct tagIEVENTSINKOBJ IEVENTSINKOBJ

## ◆ IEventSinkVtbl

typedef struct IEventSinkVtbl IEventSinkVtbl

Definition at line 15 of file win32ole_event.c.

## ◆ PEVENTSINK

typedef struct IEventSink * PEVENTSINK

## ◆ PIEVENTSINKOBJ

typedef struct tagIEVENTSINKOBJ * PIEVENTSINKOBJ

## Function Documentation

## ◆ EVENTSINK_AddRef()

EVENTSINK_AddRef | ( | PEVENTSINK | pEV | ) |

Definition at line 256 of file win32ole_event.c.

References tagIEVENTSINKOBJ::m_cRef.

## ◆ EVENTSINK_Constructor()

PIEVENTSINKOBJ EVENTSINK_Constructor | ( | void |  | ) |

Definition at line 310 of file win32ole_event.c.

References ALLOC_N, tagIEVENTSINKOBJ::lpVtbl, tagIEVENTSINKOBJ::m_cRef, tagIEVENTSINKOBJ::m_event_id, NULL, and tagIEVENTSINKOBJ::pTypeInfo.

## ◆ EVENTSINK_Destructor()

void EVENTSINK_Destructor | ( | PIEVENTSINKOBJ | pEVObj | ) |

Definition at line 323 of file win32ole_event.c.

References free, NULL, OLE_RELEASE, and tagIEVENTSINKOBJ::pTypeInfo.

## ◆ EVENTSINK_GetIDsOfNames()

STDMETHODIMP EVENTSINK_GetIDsOfNames | ( | PEVENTSINK | pEventSink,
|  | REFIID | riid,
|  | OLECHAR ** | szNames,
|  | UINT | cNames,
|  | LCID | lcid,
|  | DISPID * | pDispID
| ) |  |

Definition at line 292 of file win32ole_event.c.

References cNames, and tagIEVENTSINKOBJ::pTypeInfo.

## ◆ EVENTSINK_GetTypeInfo()

STDMETHODIMP EVENTSINK_GetTypeInfo | ( | PEVENTSINK | pEV,
|  | UINT | info,
|  | LCID | lcid,
|  | ITypeInfo ** | pInfo
| ) |  |

Definition at line 282 of file win32ole_event.c.

References NULL.

## ◆ EVENTSINK_GetTypeInfoCount()

STDMETHODIMP EVENTSINK_GetTypeInfoCount | ( | PEVENTSINK | pEV,
|  | UINT * | pct
| ) |  |

Definition at line 274 of file win32ole_event.c.

## ◆ EVENTSINK_Invoke()

STDMETHODIMP EVENTSINK_Invoke | ( | PEVENTSINK | pEventSink,
|  | DISPID | dispid,
|  | REFIID | riid,
|  | LCID | lcid,
|  | WORD | wFlags,
|  | DISPPARAMS * | pdispparams,
|  | VARIANT * | pvarResult,
|  | EXCEPINFO * | pexcepinfo,
|  | UINT * | puArgErr
| ) |  |

Definition at line 132 of file win32ole_event.c.

References count, cWIN32OLE_EVENT, FALSE, HRESULT(), tagIEVENTSINKOBJ::m_event_id, NIL_P, ole_val2variant(), ole_variant2val(), tagIEVENTSINKOBJ::pTypeInfo, Qfalse, Qnil, Qtrue, rb_ary_entry(), rb_ary_new(), rb_ary_push(), rb_intern(), rb_ivar_get(), rb_obj_is_kind_of(), rb_protect(), T_ARRAY, T_HASH, and WC2VSTR.

## ◆ EVENTSINK_QueryInterface()

STDMETHODIMP EVENTSINK_QueryInterface | ( | PEVENTSINK | pEV,
|  | REFIID | iid,
|  | LPVOID * | ppv
| ) |  |

Definition at line 237 of file win32ole_event.c.

References NULL.

## ◆ Init_win32ole_event()

void Init_win32ole_event | ( | void |  | ) |

Definition at line 1261 of file win32ole_event.c.

References cWIN32OLE_EVENT, rb_ary_new(), rb_cObject, rb_define_alloc_func(), rb_define_class(), rb_define_method, rb_define_singleton_method, rb_gc_register_mark_object(), and rb_intern().

Referenced by Init_win32ole().

## ◆ rb_write_error_str()

void rb_write_error_str | ( | VALUE | mesg | ) |

Definition at line 8083 of file io.c.

References fileno, len, RB_GC_GUARD, rb_io_write(), rb_ractor_stderr(), rb_w32_write_console(), RSTRING_LEN, and RSTRING_PTR.

Referenced by rb_syntax_error_append().

## ◆ STDMETHODIMP_()

STDMETHODIMP_ | ( | ULONG |  | ) |

Definition at line 73 of file win32ole_event.c.

## Variable Documentation

## ◆ cWIN32OLE_EVENT

VALUE cWIN32OLE_EVENT

Definition at line 70 of file win32ole_event.c.

Referenced by EVENTSINK_Invoke(), and Init_win32ole_event().