Package com.sun.jna.platform.win32

## Class Winevt.EVT_VARIANT

- java.lang.Object
- - com.sun.jna.Structure
  - - com.sun.jna.platform.win32.Winevt.EVT_VARIANT

Direct Known Subclasses:
  `Winevt.EVT_VARIANT.ByReference`, `Winevt.EVT_VARIANT.ByValue`

Enclosing interface:
  Winevt

    @FieldOrder({"field1","Count","Type"})
    public static class Winevt.EVT_VARIANT
    extends Structure

Contains event data or property values. https://msdn.microsoft.com/en-us/library/windows/desktop/aa385611(v=vs.85).aspx

### Nested Class Summary

Nested Classes
`static class` `Winevt.EVT_VARIANT.ByReference`
`static class` `Winevt.EVT_VARIANT.ByValue`
`static class` `Winevt.EVT_VARIANT.field1_union`

### Nested classes/interfaces inherited from class com.sun.jna.Structure

`Structure.FieldOrder, Structure.StructField`

### Field Summary

Fields
`int` `Count` The number of elements in the array of values.
`Winevt.EVT_VARIANT.field1_union` `field1` Exposed to follow JNA rules, use the `getValue()` method to manipulate values!
`int` `Type` A flag that specifies the data type of the variant.

### Fields inherited from class com.sun.jna.Structure

`ALIGN_DEFAULT, ALIGN_GNUC, ALIGN_MSVC, ALIGN_NONE, CALCULATE_SIZE`

### Constructor Summary

Constructors
`EVT_VARIANT()`
`EVT_VARIANT​(Pointer peer)`

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.Object` `getValue()`
`Winevt.EVT_VARIANT_TYPE` `getVariantType()`
`boolean` `isArray()`
`void` `setValue​(Winevt.EVT_VARIANT_TYPE type, java.lang.Object value)`
`void` `use​(Pointer m)`

### Methods inherited from class com.sun.jna.Structure

`allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, cacheTypeInfo, calculateSize, clear, createFieldsOrder, createFieldsOrder, createFieldsOrder, createFieldsOrder, dataEquals, dataEquals, ensureAllocated, equals, fieldOffset, getAutoRead, getAutoWrite, getFieldList, getFieldOrder, getFields, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, hashCode, newInstance, newInstance, read, readField, readField, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setStringEncoding, size, sortFields, toArray, toArray, toString, toString, useMemory, useMemory, write, writeField, writeField, writeField`

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

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

### Field Detail

#### field1

    public Winevt.EVT_VARIANT.field1_union field1

Exposed to follow JNA rules, use the `getValue()` method to manipulate values!

#### Count

    public int Count

The number of elements in the array of values. Use Count if the Type member has the EVT_VARIANT_TYPE_ARRAY flag set.

Exposed to follow JNA rules, use `getValue()` and `setValue(com.sun.jna.platform.win32.Winevt.EVT_VARIANT_TYPE, java.lang.Object)` methods to manipulate values!

#### Type

    public int Type

A flag that specifies the data type of the variant. For possible values, see the `Winevt.EVT_VARIANT_TYPE` enumeration. The variant contains an array of values, if the EVT_VARIANT_TYPE_ARRAY flag is set. The members that end in "Arr" contain arrays of values. For example, you would use the StringArr member to access the variant data if the type is EvtVarTypeString and the EVT_VARIANT_TYPE_ARRAY flag is set. You can use the `Winevt.EVT_VARIANT_TYPE_MASK` constant to mask out the array bit to determine the variant's type.

Exposed to follow JNA rules, use `getValue()` and `setValue(com.sun.jna.platform.win32.Winevt.EVT_VARIANT_TYPE, java.lang.Object)` methods to manipulate values!

### Constructor Detail

#### EVT_VARIANT

    public EVT_VARIANT()

#### EVT_VARIANT

    public EVT_VARIANT​(Pointer peer)

### Method Detail

#### use

    public void use​(Pointer m)

#### isArray

    public boolean isArray()

#### getVariantType

    public Winevt.EVT_VARIANT_TYPE getVariantType()

#### setValue

    public void setValue​(Winevt.EVT_VARIANT_TYPE type,
                         java.lang.Object value)

Parameters:
  `type` -
  `value` -

#### getValue

    public java.lang.Object getValue()

Returns:
  value contained in the EVT_VARIANT