org.apache.poi.hpsf
Class Variant

java.lang.Object
  |
  +--org.apache.poi.hpsf.Variant

public class Variant
extends java.lang.Object

The Variant types as defined by Microsoft's COM. I found this information in http://www.marin.clara.net/COM/variant_type_definitions.htm .

In the variant types descriptions the following shortcuts are used: [V] - may appear in a VARIANT, [T] - may appear in a TYPEDESC, [P] - may appear in an OLE property set, [S] - may appear in a Safe Array.

Since:
2002-02-09
Version:
$Id: Variant.java,v 1.4 2002/05/11 14:47:23 acoliver Exp $
Author:
Rainer Klute (klute@rainer-klute.de)

Field Summary
static int VT_ARRAY
           [V] SAFEARRAY*.
static int VT_BLOB
           [P] Length prefixed bytes.
static int VT_BLOB_OBJECT
           [P] Blob contains an object.
static int VT_BOOL
           [V][T][P][S] True=-1, False=0.
static int VT_BSTR
           [V][T][P][S] OLE Automation string.
static int VT_BYREF
           [V] void* for local use.
static int VT_CARRAY
           [T] C style array.
static int VT_CF
           [P] Clipboard format.
static int VT_CLSID
           [P] A Class ID.
static int VT_CY
           [V][T][P][S] currency.
static int VT_DATE
           [V][T][P][S] date.
static int VT_DECIMAL
           [V][T][S] 16 byte fixed point.
static int VT_DISPATCH
           [V][T][P][S] IDispatch *.
static int VT_EMPTY
           [V][P] Nothing.
static int VT_ERROR
           [V][T][S] SCODE.
static int VT_FILETIME
           [P] FILETIME.
static int VT_HRESULT
           [T] Standard return type.
static int VT_I1
           [T] signed char.
static int VT_I2
           [V][T][P][S] 2 byte signed int.
static int VT_I4
           [V][T][P][S] 4 byte signed int.
static int VT_I8
           [T][P] signed 64-bit int.
static int VT_ILLEGAL
          Description of the Field
static int VT_ILLEGALMASKED
          Description of the Field
static int VT_INT
           [T] signed machine int.
static int VT_LPSTR
           [T][P] null terminated string.
static int VT_LPWSTR
           [T][P] wide (Unicode) null terminated string.
static int VT_NULL
           [V][P] SQL style Null.
static int VT_PTR
           [T] pointer type.
static int VT_R4
           [V][T][P][S] 4 byte real.
static int VT_R8
           [V][T][P][S] 8 byte real.
static int VT_RESERVED
          Description of the Field
static int VT_SAFEARRAY
           [T] (use VT_ARRAY in VARIANT).
static int VT_STORAGE
           [P] Name of the storage follows.
static int VT_STORED_OBJECT
           [P] Storage contains an object.
static int VT_STREAM
           [P] Name of the stream follows.
static int VT_STREAMED_OBJECT
           [P] Stream contains an object.
static int VT_TYPEMASK
          Description of the Field
static int VT_UI1
           [V][T][P][S] unsigned char.
static int VT_UI2
           [T][P] unsigned short.
static int VT_UI4
           [T][P] unsigned int.
static int VT_UI8
           [T][P] unsigned 64-bit int.
static int VT_UINT
           [T] unsigned machine int.
static int VT_UNKNOWN
           [V][T][S] IUnknown *.
static int VT_USERDEFINED
           [T] user defined type.
static int VT_VARIANT
           [V][T][P][S] VARIANT *.
static int VT_VECTOR
           [P] simple counted array.
static int VT_VOID
           [T] C style void.
 
Constructor Summary
Variant()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VT_EMPTY

public static final int VT_EMPTY

[V][P] Nothing.


VT_NULL

public static final int VT_NULL

[V][P] SQL style Null.


VT_I2

public static final int VT_I2

[V][T][P][S] 2 byte signed int.


VT_I4

public static final int VT_I4

[V][T][P][S] 4 byte signed int.


VT_R4

public static final int VT_R4

[V][T][P][S] 4 byte real.


VT_R8

public static final int VT_R8

[V][T][P][S] 8 byte real.


VT_CY

public static final int VT_CY

[V][T][P][S] currency. How long is this? How is it to be interpreted?


VT_DATE

public static final int VT_DATE

[V][T][P][S] date. How long is this? How is it to be interpreted?


VT_BSTR

public static final int VT_BSTR

[V][T][P][S] OLE Automation string. How long is this? How is it to be interpreted?


VT_DISPATCH

public static final int VT_DISPATCH

[V][T][P][S] IDispatch *. How long is this? How is it to be interpreted?


VT_ERROR

public static final int VT_ERROR

[V][T][S] SCODE. How long is this? How is it to be interpreted?


VT_BOOL

public static final int VT_BOOL

[V][T][P][S] True=-1, False=0.


VT_VARIANT

public static final int VT_VARIANT

[V][T][P][S] VARIANT *. How long is this? How is it to be interpreted?


VT_UNKNOWN

public static final int VT_UNKNOWN

[V][T][S] IUnknown *. How long is this? How is it to be interpreted?


VT_DECIMAL

public static final int VT_DECIMAL

[V][T][S] 16 byte fixed point.


VT_I1

public static final int VT_I1

[T] signed char.


VT_UI1

public static final int VT_UI1

[V][T][P][S] unsigned char.


VT_UI2

public static final int VT_UI2

[T][P] unsigned short.


VT_UI4

public static final int VT_UI4

[T][P] unsigned int.


VT_I8

public static final int VT_I8

[T][P] signed 64-bit int.


VT_UI8

public static final int VT_UI8

[T][P] unsigned 64-bit int.


VT_INT

public static final int VT_INT

[T] signed machine int.


VT_UINT

public static final int VT_UINT

[T] unsigned machine int.


VT_VOID

public static final int VT_VOID

[T] C style void.


VT_HRESULT

public static final int VT_HRESULT

[T] Standard return type. How long is this? How is it to be interpreted?


VT_PTR

public static final int VT_PTR

[T] pointer type. How long is this? How is it to be interpreted?


VT_SAFEARRAY

public static final int VT_SAFEARRAY

[T] (use VT_ARRAY in VARIANT).


VT_CARRAY

public static final int VT_CARRAY

[T] C style array. How long is this? How is it to be interpreted?


VT_USERDEFINED

public static final int VT_USERDEFINED

[T] user defined type. How long is this? How is it to be interpreted?


VT_LPSTR

public static final int VT_LPSTR

[T][P] null terminated string.


VT_LPWSTR

public static final int VT_LPWSTR

[T][P] wide (Unicode) null terminated string.


VT_FILETIME

public static final int VT_FILETIME

[P] FILETIME. The FILETIME structure holds a date and time associated with a file. The structure identifies a 64-bit integer specifying the number of 100-nanosecond intervals which have passed since January 1, 1601. This 64-bit value is split into the two dwords stored in the structure.


VT_BLOB

public static final int VT_BLOB

[P] Length prefixed bytes.


VT_STREAM

public static final int VT_STREAM

[P] Name of the stream follows.


VT_STORAGE

public static final int VT_STORAGE

[P] Name of the storage follows.


VT_STREAMED_OBJECT

public static final int VT_STREAMED_OBJECT

[P] Stream contains an object. How long is this? How is it to be interpreted?


VT_STORED_OBJECT

public static final int VT_STORED_OBJECT

[P] Storage contains an object. How long is this? How is it to be interpreted?


VT_BLOB_OBJECT

public static final int VT_BLOB_OBJECT

[P] Blob contains an object. How long is this? How is it to be interpreted?


VT_CF

public static final int VT_CF

[P] Clipboard format. How long is this? How is it to be interpreted?


VT_CLSID

public static final int VT_CLSID

[P] A Class ID.

It consists of a 32 bit unsigned integer indicating the size of the structure, a 32 bit signed integer indicating (Clipboard Format Tag) indicating the type of data that it contains, and then a byte array containing the data.

The valid Clipboard Format Tags are:

typedef struct  tagCLIPDATA {
 // cbSize is the size of the buffer pointed to
 // by pClipData, plus sizeof(ulClipFmt)
 ULONG              cbSize;
 long               ulClipFmt;
 BYTE*              pClipData;
 } CLIPDATA;
See msdn.microsoft.com/library/en-us/com/stgrstrc_0uwk.asp


VT_VECTOR

public static final int VT_VECTOR

[P] simple counted array. How long is this? How is it to be interpreted?


VT_ARRAY

public static final int VT_ARRAY

[V] SAFEARRAY*. How long is this? How is it to be interpreted?


VT_BYREF

public static final int VT_BYREF

[V] void* for local use. How long is this? How is it to be interpreted?


VT_RESERVED

public static final int VT_RESERVED
Description of the Field

VT_ILLEGAL

public static final int VT_ILLEGAL
Description of the Field

VT_ILLEGALMASKED

public static final int VT_ILLEGALMASKED
Description of the Field

VT_TYPEMASK

public static final int VT_TYPEMASK
Description of the Field
Constructor Detail

Variant

public Variant()

jakarta-poi 1.7.0-dev

Copyright © 2002 Apache jakarta-poi project. All Rights Reserved.