Class: TurboRex::Windows::COM::Interface::IUnknown

Inherits:
TurboRex::Windows::COM::Interface show all
Defined in:
lib/turborex/windows/com/interface.rb

Constant Summary collapse

METHOD_DEFS =
<<-EOS
  HRESULT STDMETHODCALLTYPE QueryInterface( 
          IUnknown * This,
          REFIID riid,
          void **ppvObject);

  ULONG STDMETHODCALLTYPE AddRef(IUnknown * This);
        
  ULONG STDMETHODCALLTYPE Release(IUnknown * This);
EOS
METHODS =
[
 _symbol['QueryInterface'],
 _symbol['AddRef'],                    
 _symbol['Release'] 
]

Constants included from WellKnownIID

WellKnownIID::IID_IClassFactory, WellKnownIID::IID_IPSFactoryBuffer, WellKnownIID::IID_IRpcProxyBuffer, WellKnownIID::IID_IRpcStubBuffer, WellKnownIID::IID_IStorage, WellKnownIID::IID_IStream, WellKnownIID::IID_IUnknown

Instance Attribute Summary

Attributes inherited from TurboRex::Windows::COM::Interface

#iid, #methods, #parent, #pvtbl, #this, #vtbl

Instance Method Summary collapse

Methods inherited from TurboRex::Windows::COM::Interface

define_interface, #marshal_to_string

Constructor Details

#initializeIUnknown

Returns a new instance of IUnknown.



36
37
38
39
40
# File 'lib/turborex/windows/com/interface.rb', line 36

def initialize
  methods = METHODS
  parent = nil
  super(IID_IUnknown, methods, parent)
end

Instance Method Details

#nameObject



42
43
44
# File 'lib/turborex/windows/com/interface.rb', line 42

def name
  self.class.to_s
end