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

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 Details

### 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 Details

### 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