27 int n_old =
elt (elt_index).
size (elt_index);
28 adjust1 (elt_index, n_old,
static_cast<int>(n_new) - n_old);
44 if (n_add == 0)
return;
55 linkedVec =
m_container.getStore()->linkedVector (auxid);
63 size_t beg = e.begin(elt_index);
75 std::ranges::for_each (
m_elts | std::views::drop (elt_index+1),
Conversions for accessing jagged vector variables.
Abstract interface for manipulating vectors of arbitrary types.
auxid_t auxid() const
Return the auxid of the variable this vector represents.
virtual bool shift(size_t pos, ptrdiff_t offs)=0
Shift the elements of the vector.
Describe one element of a jagged vector (base class).
size_t size(size_t elt_ndx) const
Return the number of items in this range.
typename Elt_t::index_type index_type
Type used for indexing into a jagged vector.
SG::JaggedVecEltBase Elt_t
Type of a jagged vector element.
Elt_t & elt(size_t elt_index) noexcept
Return one jagged vector element (non-const).
void adjust1(size_t elt_index, index_type index, int n_add)
Add or remove payload items from one jagged vector element.
std::variant< IAuxTypeVector *, SG::auxid_t > m_linkedVec
Elt_span m_elts
The elements of the jagged vector.
void resize1(size_t elt_index, index_type n_new)
Resize one jagged vector element.
AuxVectorData & m_container
The container holding the variable.
size_t auxid_t
Identifier for a particular aux data item.