| Windows C++ Library
   
    | 
A Wrapper Facade for a 1-dimension SAFEARRAY. More...
#include <VariantVector.hpp>
| Public Types | |
| typedef T * | iterator | 
| typedef const T * | const_iterator | 
| Public Member Functions | |
| VariantVector () | |
| Default constructor. | |
| VariantVector (size_t nSize, VARTYPE eVarType=VT_VARIANT) | |
| Construction of a fixed size array. | |
| VariantVector (SAFEARRAY *pSafeArray, VARTYPE eVarType=VT_VARIANT, bool bOwner=true) | |
| Take ownership of an existing SAFEARRAY. | |
| ~VariantVector () | |
| Destructor. | |
| size_t | Size () const | 
| Get the size of the vector. | |
| const T & | operator[] (size_t index) const | 
| Access the element at the given index. | |
| T & | operator[] (size_t index) | 
| Access the element at the given index. | |
| const_iterator | begin () const | 
| Get an iterator to the start of the vector. | |
| iterator | begin () | 
| Get an iterator to the start of the vector. | |
| const_iterator | end () const | 
| Get an iterator to one past the end of the vector. | |
| iterator | end () | 
| Get an iterator to one past the end of the vector. | |
| SAFEARRAY * | Detach () | 
| Take ownership of the SAFEARRAY. | |
| Private Types | |
| typedef Core::Scoped< SAFEARRAY * > | SafeArrayPtr | 
| The RAII type used to manage the SAFEARRAY. | |
| Private Member Functions | |
| void | Unlock () | 
| Unlock the underlying storage. | |
| void | Release () | 
| Release the underlying SAFEARRAY. | |
| Static Private Member Functions | |
| static void | DestroySafeArray (SAFEARRAY *pSafeArray) | 
| Helper function for destroying a SAFEARRAY as a Scoped<SAFEARRAY*>. | |
| Private Attributes | |
| size_t | m_nSize | 
| The size of the vector. | |
| SAFEARRAY * | m_pSafeArray | 
| The underlying SAFEARRAY. | |
| bool | m_bOwner | 
| Flag to signal ownership of the underlying SAFEARRAY. | |
| T * | m_pData | 
| The SAFEARRAY underlying storage. | |
A Wrapper Facade for a 1-dimension SAFEARRAY.
| typedef T* WCL::VariantVector< T >::iterator | 
| typedef const T* WCL::VariantVector< T >::const_iterator | 
| typedef Core::Scoped<SAFEARRAY*> WCL::VariantVector< T >::SafeArrayPtr  [private] | 
The RAII type used to manage the SAFEARRAY.
| WCL::VariantVector< T >::VariantVector | ( | ) |  [inline] | 
Default constructor.
| WCL::VariantVector< T >::VariantVector | ( | size_t | nSize, | 
| VARTYPE | eVarType = VT_VARIANT | ||
| ) |  [inline, explicit] | 
Construction of a fixed size array.
| WCL::VariantVector< T >::VariantVector | ( | SAFEARRAY * | pSafeArray, | 
| VARTYPE | eVarType = VT_VARIANT, | ||
| bool | bOwner = true | ||
| ) |  [inline, explicit] | 
Take ownership of an existing SAFEARRAY.
| WCL::VariantVector< T >::~VariantVector | ( | ) |  [inline] | 
Destructor.
| size_t WCL::VariantVector< T >::Size | ( | ) | const  [inline] | 
Get the size of the vector.
| const T & WCL::VariantVector< T >::operator[] | ( | size_t | index | ) | const  [inline] | 
Access the element at the given index.
| T & WCL::VariantVector< T >::operator[] | ( | size_t | index | ) |  [inline] | 
Access the element at the given index.
| VariantVector< T >::const_iterator WCL::VariantVector< T >::begin | ( | ) | const  [inline] | 
Get an iterator to the start of the vector.
| VariantVector< T >::iterator WCL::VariantVector< T >::begin | ( | ) |  [inline] | 
Get an iterator to the start of the vector.
| VariantVector< T >::const_iterator WCL::VariantVector< T >::end | ( | ) | const  [inline] | 
Get an iterator to one past the end of the vector.
| VariantVector< T >::iterator WCL::VariantVector< T >::end | ( | ) |  [inline] | 
Get an iterator to one past the end of the vector.
| SAFEARRAY * WCL::VariantVector< T >::Detach | ( | ) |  [inline] | 
Take ownership of the SAFEARRAY.
| void WCL::VariantVector< T >::Unlock | ( | ) |  [inline, private] | 
Unlock the underlying storage.
| void WCL::VariantVector< T >::Release | ( | ) |  [inline, private] | 
Release the underlying SAFEARRAY.
This also unlocks the storage first if required.
| void WCL::VariantVector< T >::DestroySafeArray | ( | SAFEARRAY * | pSafeArray | ) |  [inline, static, private] | 
Helper function for destroying a SAFEARRAY as a Scoped<SAFEARRAY*>.
| size_t WCL::VariantVector< T >::m_nSize  [private] | 
The size of the vector.
| SAFEARRAY* WCL::VariantVector< T >::m_pSafeArray  [private] | 
The underlying SAFEARRAY.
| bool WCL::VariantVector< T >::m_bOwner  [private] | 
Flag to signal ownership of the underlying SAFEARRAY.
| T* WCL::VariantVector< T >::m_pData  [private] | 
The SAFEARRAY underlying storage.
 1.7.6.1
 1.7.6.1