#include <slice.hpp>
Public Member Functions | |
Slice (const T *ptr, size_t begin, size_t end) | |
Slice< const T * > | subSlice (size_t begin, size_t end) const |
Public Member Functions inherited from Exiv2::Internal::ConstSliceBase< Internal::PtrSliceStorage, const T * > | |
ConstSliceBase (const T * &data, size_t begin, size_t end) | |
const value_type & | at (size_t index) const |
const_iterator | cbegin () const noexcept |
const_iterator | cend () const noexcept |
slice_type | subSlice (size_t begin, size_t end) const |
Public Member Functions inherited from Exiv2::Internal::SliceBase | |
SliceBase (size_t begin, size_t end) | |
size_t | size () const noexcept |
Additional Inherited Members | |
Public Types inherited from Exiv2::Internal::ConstSliceBase< Internal::PtrSliceStorage, const T * > | |
using | iterator = typename Internal::PtrSliceStorage< const T * >::iterator |
using | const_iterator = typename Internal::PtrSliceStorage< const T * >::const_iterator |
using | value_type = typename Internal::PtrSliceStorage< const T * >::value_type |
Protected Member Functions inherited from Exiv2::Internal::SliceBase | |
void | rangeCheck (size_t index) const |
Protected Attributes inherited from Exiv2::Internal::ConstSliceBase< Internal::PtrSliceStorage, const T * > | |
Internal::PtrSliceStorage< const T * > | storage_ |
Protected Attributes inherited from Exiv2::Internal::SliceBase | |
size_t | begin_ |
size_t | end_ |
Specialization of slices for constant C-arrays.
These have exactly the same interface as the slices for STL-containers, with the crucial exception, that the slice's constructor cannot make a proper bounds check! It can only verify that you didn't accidentally swap begin and end!
|
inline |
Constructor.
[in] | ptr | C-array of which a slice should be constructed. Must not be a null pointer. |
[in] | begin | Index of the first element in the slice. |
[in] | end | Index of the first element that is no longer in the slice. |
Please note that the constructor has no way how to verify that begin
and end
are not out of bounds of the provided array!