Exiv2::Internal::PtrSliceStorage< storage_type > Struct Template Reference

Implementation of the storage concept for slices of C arrays. More...

`#include <slice.hpp>`

## Public Types

typedef remove_cv< typename remove_pointer< storage_type >::type >::type | value_type
typedef value_type * | iterator
typedef const value_type * | const_iterator

## Public Member Functions

| PtrSliceStorage (storage_type ptr, size_t, size_t)
value_type & | unsafeAt (size_t index) throw ()
const value_type & | unsafeAt (size_t index) const throw ()
iterator | unsafeGetIteratorAt (size_t index) throw ()
const_iterator | unsafeGetIteratorAt (size_t index) const throw ()

## Public Attributes

storage_type | data_

## Detailed Description

### template<typename storage_type>
struct Exiv2::Internal::PtrSliceStorage< storage_type >

Implementation of the storage concept for slices of C arrays.

Template Parameters

  storage_type | Type as which the C-array should be stored. Use this parameter to save constant arrays as `const` and mutable ones as non-`const`.

## Constructor & Destructor Documentation

## PtrSliceStorage()

template<typename storage_type >

Exiv2::Internal::PtrSliceStorage< storage_type >::PtrSliceStorage | ( | storage_type | ptr,
|  | size_t | ,
|  | size_t |
| ) |  |

inline

Stores ptr and checks that it is not `NULL`. The slice's bounds are ignored, as we do not know the array's length.

Exceptions

  std::invalid_argument | when ptr is `NULL`

## Member Function Documentation

## unsafeAt()

template<typename storage_type >

value_type& Exiv2::Internal::PtrSliceStorage< storage_type >::unsafeAt | ( | size_t | index | ) |
throw | ( |
| ) |  |

inline

Obtain a reference to the element with the given `index` in the array.

Exceptions

  nothing |

## unsafeGetIteratorAt()

template<typename storage_type >

iterator Exiv2::Internal::PtrSliceStorage< storage_type >::unsafeGetIteratorAt | ( | size_t | index | ) |
throw | ( |
| ) |  |

inline

Obtain an iterator (=pointer) at the position of the element with the given index in the container.

Exceptions

  nothing |

The documentation for this struct was generated from the following file:

- slice.hpp