# Glib::ArrayHandle< T, Tr > Class Template Reference
[Generic container converters]

If a method takes this as an argument, or has this as a return type, then you can use a standard container such as std::list or std::vector. More...

`#include <glibmm/arrayhandle.h>`

List of all members.

## Public Types
typedef Tr::CppType | CppType
typedef Tr::CType | CType
typedef CppType | value_type
typedef size_t | size_type
typedef ptrdiff_t | difference_type
typedef Glib::Container_Helpers::ArrayHandleIterator < Tr > | const_iterator
typedef Glib::Container_Helpers::ArrayHandleIterator < Tr > | iterator
## Public Member Functions
template<class Cont >
| ArrayHandle (const Cont& container)
| ArrayHandle (const CType* array, size_t array_size, Glib::OwnershipType ownership)
| ArrayHandle (const CType* array, Glib::OwnershipType ownership)
| ArrayHandle (const ArrayHandle< T, Tr >& other)
| ~ArrayHandle ()
const_iterator | begin () const
const_iterator | end () const
template<class U >
| operator std::vector< U > () const
template<class U >
| operator std::deque< U > () const
template<class U >
| operator std::list< U > () const
template<class Cont >
void | assign_to (Cont& container) const
template<class Out >
void | copy (Out pdest) const
const CType* | data () const
size_t | size () const
bool | empty () const

## Detailed Description

### template <class T, class Tr = Glib::Container_Helpers::TypeTraits<T>>
class Glib::ArrayHandle< T, Tr >

If a method takes this as an argument, or has this as a return type, then you can use a standard container such as std::list or std::vector.

## Member Typedef Documentation

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef Glib::Container_Helpers::ArrayHandleIterator<Tr> Glib::ArrayHandle< T, Tr >::const_iterator

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef Tr::CppType Glib::ArrayHandle< T, Tr >::CppType

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef Tr::CType Glib::ArrayHandle< T, Tr >::CType

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef ptrdiff_t Glib::ArrayHandle< T, Tr >::difference_type

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef Glib::Container_Helpers::ArrayHandleIterator<Tr> Glib::ArrayHandle< T, Tr >::iterator

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef size_t Glib::ArrayHandle< T, Tr >::size_type

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

typedef CppType Glib::ArrayHandle< T, Tr >::value_type

## Constructor & Destructor Documentation

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class Cont >

Glib::ArrayHandle< T, Tr >::ArrayHandle | ( | const Cont & | container | ) | `[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

Glib::ArrayHandle< T, Tr >::ArrayHandle | ( | const CType* | array,
|  | size_t | array_size,
|  | Glib::OwnershipType | ownership |
| ) |  |  | `[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

Glib::ArrayHandle< T, Tr >::ArrayHandle | ( | const CType* | array,
|  | Glib::OwnershipType | ownership |
| ) |  |  | `[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

Glib::ArrayHandle< T, Tr >::ArrayHandle | ( | const ArrayHandle< T, Tr >& | other | ) | `[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

Glib::ArrayHandle< T, Tr >::~ArrayHandle | ( |  | ) |

## Member Function Documentation

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class Cont >

void Glib::ArrayHandle< T, Tr >::assign_to | ( | Cont & | container | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

const_iterator Glib::ArrayHandle< T, Tr >::begin | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class Out >

void Glib::ArrayHandle< T, Tr >::copy | ( | Out | pdest | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

const CType* Glib::ArrayHandle< T, Tr >::data | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

bool Glib::ArrayHandle< T, Tr >::empty | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

const_iterator Glib::ArrayHandle< T, Tr >::end | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class U >

Glib::ArrayHandle< T, Tr >::operator std::deque< U > | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class U >

Glib::ArrayHandle< T, Tr >::operator std::list< U > | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>
template <class U >

Glib::ArrayHandle< T, Tr >::operator std::vector< U > | ( |  | ) | const`[inline]`

template <class T , class Tr = Glib::Container_Helpers::TypeTraits<T>>

size_t Glib::ArrayHandle< T, Tr >::size | ( |  | ) | const`[inline]`