Manifold 1.0
Robust computational geometry
 
Loading...
Searching...
No Matches
VecView< T > Class Template Reference

#include <vec_view.h>

Inherited by Vec< int >, Vec< glm::vec3 >, Vec< manifold::Box >, Vec< thrust::pair< int, int > >, Vec< Uint64 >, Vec< V >, Vec< manifold::Halfedge >, Vec< glm::vec4 >, Vec< float >, Vec< manifold::TriRef >, Vec< glm::ivec3 >, Vec< char >, Vec< unsigned char >, and Vec< T >.

Public Types

using Iter = T *
 
using IterC = const T *
 

Public Member Functions

 VecView (T *ptr_, size_t size_)
 
 VecView (const VecView &other)
 
VecViewoperator= (const VecView &other)
 
 operator VecView< const T > () const
 
const Toperator[] (size_t i) const
 
Toperator[] (size_t i)
 
IterC cbegin () const
 
IterC cend () const
 
IterC begin () const
 
IterC end () const
 
Iter begin ()
 
Iter end ()
 
const Tfront () const
 
const Tback () const
 
Tfront ()
 
Tback ()
 
size_t size () const
 
bool empty () const
 
void Dump () const
 

Protected Attributes

Tptr_ = nullptr
 
size_t size_ = 0
 

Detailed Description

template<typename T>
class manifold::VecView< T >

View for Vec, can perform offset operation. This will be invalidated when the original vector is dropped or changes length. Roughly equivalent to std::span<T> from c++20