Exiv2::Slice< const T * > Struct Template Reference

#include <slice.hpp>

Inheritance diagram for Exiv2::Slice< const T * >:

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_
 

Detailed Description

template<typename T>
struct Exiv2::Slice< const T * >

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!

Constructor & Destructor Documentation

◆ Slice()

template<typename T >
Exiv2::Slice< const T * >::Slice ( const T *  ptr,
size_t  begin,
size_t  end 
)
inline

Constructor.

Parameters
[in]ptrC-array of which a slice should be constructed. Must not be a null pointer.
[in]beginIndex of the first element in the slice.
[in]endIndex 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!


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