Package com.sun.jna.platform.win32.COM

## Class TypeLib

- java.lang.Object
- - com.sun.jna.PointerType
  - - com.sun.jna.platform.win32.COM.COMInvoker
    - - com.sun.jna.platform.win32.COM.Unknown
      - - com.sun.jna.platform.win32.COM.TypeLib

- All Implemented Interfaces:
    `NativeMapped`, `ITypeLib`, `IUnknown`
  Direct Known Subclasses:
    `TypeLib.ByReference`

      public class TypeLib
      extends Unknown
      implements ITypeLib

  Wrapper class for the ITypeLib interface.
  Author:
    Tobias Wolf, wolf.tobias@gmx.net

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `TypeLib.ByReference` |

  - ### Field Summary

    - ### Fields inherited from interface com.sun.jna.platform.win32.COM.IUnknown

      `IID_IUNKNOWN`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TypeLib()` | Instantiates a new i type lib.
    `TypeLib​(Pointer pvInstance)` | Instantiates a new i type lib.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `WinNT.HRESULT` | `FindName​(WTypes.LPOLESTR szNameBuf, WinDef.ULONG lHashVal, Pointer[] ppTInfo, OaIdl.MEMBERID[] rgMemId, WinDef.USHORTByReference pcFound)` | Find name.
    `WinNT.HRESULT` | `GetDocumentation​(int index, WTypes.BSTRByReference pBstrName, WTypes.BSTRByReference pBstrDocString, WinDef.DWORDByReference pdwHelpContext, WTypes.BSTRByReference pBstrHelpFile)` | Gets the documentation.
    `WinNT.HRESULT` | `GetLibAttr​(PointerByReference ppTLibAttr)` | Gets the lib attr.
    `WinNT.HRESULT` | `GetTypeComp​(PointerByReference pTComp)` | Gets the type comp.
    `WinNT.HRESULT` | `GetTypeInfo​(WinDef.UINT index, PointerByReference pTInfo)` | Gets the type info.
    `WinDef.UINT` | `GetTypeInfoCount()` | Gets the type info count.
    `WinNT.HRESULT` | `GetTypeInfoOfGuid​(Guid.GUID guid, PointerByReference pTinfo)` | Gets the type info of guid.
    `WinNT.HRESULT` | `GetTypeInfoType​(WinDef.UINT index, OaIdl.TYPEKIND.ByReference pTKind)` | Gets the type info type.
    `WinNT.HRESULT` | `IsName​(WTypes.LPOLESTR szNameBuf, WinDef.ULONG lHashVal, WinDef.BOOLByReference pfName)` | Checks if is name.
    `void` | `ReleaseTLibAttr​(OaIdl.TLIBATTR pTLibAttr)` | Release t lib attr.

    - ### Methods inherited from class com.sun.jna.platform.win32.COM.Unknown

      `AddRef, QueryInterface, Release`

    - ### Methods inherited from class com.sun.jna.platform.win32.COM.COMInvoker

      `_invokeNativeInt, _invokeNativeObject, _invokeNativeVoid`

    - ### Methods inherited from class com.sun.jna.PointerType

      `equals, fromNative, getPointer, hashCode, nativeType, setPointer, toNative, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.sun.jna.platform.win32.COM.IUnknown

      `AddRef, QueryInterface, Release`

- - ### Constructor Detail

    - #### TypeLib

          public TypeLib()

      Instantiates a new i type lib.

    - #### TypeLib

          public TypeLib​(Pointer pvInstance)

      Instantiates a new i type lib.
      Parameters:
        `pvInstance` - the pv instance

  - ### Method Detail

    - #### GetTypeInfoCount

          public WinDef.UINT GetTypeInfoCount()

      Gets the type info count.
      Specified by:
        `GetTypeInfoCount` in interface `ITypeLib`
      Returns:
        the uint

    - #### GetTypeInfo

          public WinNT.HRESULT GetTypeInfo​(WinDef.UINT index,
                                           PointerByReference pTInfo)

      Gets the type info.
      Specified by:
        `GetTypeInfo` in interface `ITypeLib`
      Parameters:
        `index` - the index
        `pTInfo` - the t info
      Returns:
        the hresult

    - #### GetTypeInfoType

          public WinNT.HRESULT GetTypeInfoType​(WinDef.UINT index,
                                               OaIdl.TYPEKIND.ByReference pTKind)

      Gets the type info type.
      Specified by:
        `GetTypeInfoType` in interface `ITypeLib`
      Parameters:
        `index` - the index
        `pTKind` - the t kind
      Returns:
        the hresult

    - #### GetTypeInfoOfGuid

          public WinNT.HRESULT GetTypeInfoOfGuid​(Guid.GUID guid,
                                                 PointerByReference pTinfo)

      Gets the type info of guid.
      Specified by:
        `GetTypeInfoOfGuid` in interface `ITypeLib`
      Parameters:
        `guid` - the guid
        `pTinfo` - the tinfo
      Returns:
        the hresult

    - #### GetLibAttr

          public WinNT.HRESULT GetLibAttr​(PointerByReference ppTLibAttr)

      Gets the lib attr.
      Specified by:
        `GetLibAttr` in interface `ITypeLib`
      Parameters:
        `ppTLibAttr` - the pp t lib attr
      Returns:
        the hresult

    - #### GetTypeComp

          public WinNT.HRESULT GetTypeComp​(PointerByReference pTComp)

      Gets the type comp.
      Specified by:
        `GetTypeComp` in interface `ITypeLib`
      Parameters:
        `pTComp` - the t comp
      Returns:
        the hresult

    - #### GetDocumentation

          public WinNT.HRESULT GetDocumentation​(int index,
                                                WTypes.BSTRByReference pBstrName,
                                                WTypes.BSTRByReference pBstrDocString,
                                                WinDef.DWORDByReference pdwHelpContext,
                                                WTypes.BSTRByReference pBstrHelpFile)

      Gets the documentation.
      Specified by:
        `GetDocumentation` in interface `ITypeLib`
      Parameters:
        `index` - the index
        `pBstrName` - the bstr name
        `pBstrDocString` - the bstr doc string
        `pdwHelpContext` - the pdw help context
        `pBstrHelpFile` - the bstr help file
      Returns:
        the hresult

    - #### IsName

          public WinNT.HRESULT IsName​(WTypes.LPOLESTR szNameBuf,
                                      WinDef.ULONG lHashVal,
                                      WinDef.BOOLByReference pfName)

      Checks if is name.
      Specified by:
        `IsName` in interface `ITypeLib`
      Parameters:
        `szNameBuf` - the sz name buf
        `lHashVal` - the l hash val
        `pfName` - the pf name
      Returns:
        the hresult

    - #### FindName

          public WinNT.HRESULT FindName​(WTypes.LPOLESTR szNameBuf,
                                        WinDef.ULONG lHashVal,
                                        Pointer[] ppTInfo,
                                        OaIdl.MEMBERID[] rgMemId,
                                        WinDef.USHORTByReference pcFound)

      Find name.
      Specified by:
        `FindName` in interface `ITypeLib`
      Parameters:
        `szNameBuf` - the sz name buf
        `lHashVal` - the l hash val
        `ppTInfo` - the pp t info
        `rgMemId` - the rg mem id
        `pcFound` - the pc found
      Returns:
        the hresult

    - #### ReleaseTLibAttr

          public void ReleaseTLibAttr​(OaIdl.TLIBATTR pTLibAttr)

      Release t lib attr.
      Specified by:
        `ReleaseTLibAttr` in interface `ITypeLib`
      Parameters:
        `pTLibAttr` - the t lib attr