RecordInfo (JNA API)
Description: declaration: package: com.sun.jna.platform.win32.COM, class: RecordInfo

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

# Class RecordInfo

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.RecordInfo

All Implemented Interfaces:
  `NativeMapped`, `IRecordInfo`, `IUnknown`

Direct Known Subclasses:
  `RecordInfo.ByReference`

public class RecordInfo extends Unknown implements IRecordInfo
Wrapper class for the IRecordInfo interface.

Author:
  Tobias Wolf, wolf.tobias@gmx.net

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `RecordInfo.ByReference`

- ## Field Summary

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

  `IID_IRecordInfo`

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

  `IID_IUNKNOWN`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `RecordInfo()`
  Instantiates a new i record info.
  `RecordInfo(Pointer pvInstance)`
  Instantiates a new i record info.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `WinNT.HRESULT`
  `GetField(WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField)`
  Gets the field.
  `WinNT.HRESULT`
  `GetFieldNames(WinDef.ULONG pcNames, WTypes.BSTR rgBstrNames)`
  Gets the field names.
  `WinNT.HRESULT`
  `GetFieldNoCopy(WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField, WinDef.PVOID ppvDataCArray)`
  Gets the field no copy.
  `WinNT.HRESULT`
  `GetGuid(Guid.GUID pguid)`
  Gets the guid.
  `WinNT.HRESULT`
  `GetName(WTypes.BSTR pbstrName)`
  Gets the name.
  `WinNT.HRESULT`
  `GetSize(WinDef.ULONG pcbSize)`
  Gets the size.
  `WinNT.HRESULT`
  `GetTypeInfo(ITypeInfo ppTypeInfo)`
  Gets the type info.
  `WinDef.BOOL`
  `IsMatchingType(IRecordInfo pRecordInfo)`
  Checks if is matching type.
  `WinNT.HRESULT`
  `PutField(WinDef.ULONG wFlags, WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField)`
  Put field.
  `WinNT.HRESULT`
  `PutFieldNoCopy(WinDef.ULONG wFlags, WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField)`
  Put field no copy.
  `WinNT.HRESULT`
  `RecordClear(WinDef.PVOID pvExisting)`
  Record clear.
  `WinNT.HRESULT`
  `RecordCopy(WinDef.PVOID pvExisting, WinDef.PVOID pvNew)`
  Record copy.
  `WinDef.PVOID`
  `RecordCreate()`
  Record create.
  `WinNT.HRESULT`
  `RecordCreateCopy(WinDef.PVOID pvSource, WinDef.PVOID ppvDest)`
  Record create copy.
  `WinNT.HRESULT`
  `RecordDestroy(WinDef.PVOID pvRecord)`
  Record destroy.
  `WinNT.HRESULT`
  `RecordInit(WinDef.PVOID pvNew)`
  Record init.

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

  - ### RecordInfo

    public RecordInfo()
    Instantiates a new i record info.

  - ### RecordInfo

    public RecordInfo(Pointer pvInstance)
    Instantiates a new i record info.
    Parameters:
      `pvInstance` - the pv instance

- ## Method Details

  - ### RecordInit

    public WinNT.HRESULT RecordInit(WinDef.PVOID pvNew)
    Record init.
    Specified by:
      `RecordInit` in interface `IRecordInfo`
    Parameters:
      `pvNew` - the pv new
    Returns:
      the hresult

  - ### RecordClear

    public WinNT.HRESULT RecordClear(WinDef.PVOID pvExisting)
    Record clear.
    Specified by:
      `RecordClear` in interface `IRecordInfo`
    Parameters:
      `pvExisting` - the pv existing
    Returns:
      the hresult

  - ### RecordCopy

    public WinNT.HRESULT RecordCopy(WinDef.PVOID pvExisting, WinDef.PVOID pvNew)
    Record copy.
    Specified by:
      `RecordCopy` in interface `IRecordInfo`
    Parameters:
      `pvExisting` - the pv existing
      `pvNew` - the pv new
    Returns:
      the hresult

  - ### GetGuid

    public WinNT.HRESULT GetGuid(Guid.GUID pguid)
    Gets the guid.
    Specified by:
      `GetGuid` in interface `IRecordInfo`
    Parameters:
      `pguid` - the pguid
    Returns:
      the hresult

  - ### GetName

    public WinNT.HRESULT GetName(WTypes.BSTR pbstrName)
    Gets the name.
    Specified by:
      `GetName` in interface `IRecordInfo`
    Parameters:
      `pbstrName` - the pbstr name
    Returns:
      the hresult

  - ### GetSize

    public WinNT.HRESULT GetSize(WinDef.ULONG pcbSize)
    Gets the size.
    Specified by:
      `GetSize` in interface `IRecordInfo`
    Parameters:
      `pcbSize` - the pcb size
    Returns:
      the hresult

  - ### GetTypeInfo

    public WinNT.HRESULT GetTypeInfo(ITypeInfo ppTypeInfo)
    Gets the type info.
    Specified by:
      `GetTypeInfo` in interface `IRecordInfo`
    Parameters:
      `ppTypeInfo` - the pp type info
    Returns:
      the hresult

  - ### GetField

    public WinNT.HRESULT GetField(WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField)
    Gets the field.
    Specified by:
      `GetField` in interface `IRecordInfo`
    Parameters:
      `pvData` - the pv data
      `szFieldName` - the sz field name
      `pvarField` - the pvar field
    Returns:
      the hresult

  - ### GetFieldNoCopy

    public WinNT.HRESULT GetFieldNoCopy(WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField, WinDef.PVOID ppvDataCArray)
    Gets the field no copy.
    Specified by:
      `GetFieldNoCopy` in interface `IRecordInfo`
    Parameters:
      `pvData` - the pv data
      `szFieldName` - the sz field name
      `pvarField` - the pvar field
      `ppvDataCArray` - the ppv data c array
    Returns:
      the hresult

  - ### PutField

    public WinNT.HRESULT PutField(WinDef.ULONG wFlags, WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField)
    Put field.
    Specified by:
      `PutField` in interface `IRecordInfo`
    Parameters:
      `wFlags` - the w flags
      `pvData` - the pv data
      `szFieldName` - the sz field name
      `pvarField` - the pvar field
    Returns:
      the hresult

  - ### PutFieldNoCopy

    public WinNT.HRESULT PutFieldNoCopy(WinDef.ULONG wFlags, WinDef.PVOID pvData, WString szFieldName, Variant.VARIANT pvarField)
    Put field no copy.
    Specified by:
      `PutFieldNoCopy` in interface `IRecordInfo`
    Parameters:
      `wFlags` - the w flags
      `pvData` - the pv data
      `szFieldName` - the sz field name
      `pvarField` - the pvar field
    Returns:
      the hresult

  - ### GetFieldNames

    public WinNT.HRESULT GetFieldNames(WinDef.ULONG pcNames, WTypes.BSTR rgBstrNames)
    Gets the field names.
    Specified by:
      `GetFieldNames` in interface `IRecordInfo`
    Parameters:
      `pcNames` - the pc names
      `rgBstrNames` - the rg bstr names
    Returns:
      the hresult

  - ### IsMatchingType

    public WinDef.BOOL IsMatchingType(IRecordInfo pRecordInfo)
    Checks if is matching type.
    Specified by:
      `IsMatchingType` in interface `IRecordInfo`
    Parameters:
      `pRecordInfo` - the record info
    Returns:
      the bool

  - ### RecordCreate

    public WinDef.PVOID RecordCreate()
    Record create.
    Specified by:
      `RecordCreate` in interface `IRecordInfo`
    Returns:
      the pvoid

  - ### RecordCreateCopy

    public WinNT.HRESULT RecordCreateCopy(WinDef.PVOID pvSource, WinDef.PVOID ppvDest)
    Record create copy.
    Specified by:
      `RecordCreateCopy` in interface `IRecordInfo`
    Parameters:
      `pvSource` - the pv source
      `ppvDest` - the ppv dest
    Returns:
      the hresult

  - ### RecordDestroy

    public WinNT.HRESULT RecordDestroy(WinDef.PVOID pvRecord)
    Record destroy.
    Specified by:
      `RecordDestroy` in interface `IRecordInfo`
    Parameters:
      `pvRecord` - the pv record
    Returns:
      the hresult