/** * PANDA 3D SOFTWARE * Copyright (c) Carnegie Mellon University. All rights reserved. * * All use of this software is subject to the terms of the revised BSD * license. You should have received a copy of this license along * with this source code in a file named "LICENSE." * * @file pointerToArrayBase.I * @author drose * @date 2006-10-30 */ /** * */ template INLINE ReferenceCountedVector:: ReferenceCountedVector(TypeHandle type_handle) : pvector(type_handle) { } /** * Creates an array of initial_size elements. */ template INLINE ReferenceCountedVector:: ReferenceCountedVector(typename ReferenceCountedVector::size_type initial_size, TypeHandle type_handle) : pvector(initial_size, type_handle) { } /** * Creates an array with all elements from begin up to but not including end. */ template INLINE ReferenceCountedVector:: ReferenceCountedVector(const Element *begin, const Element *end, TypeHandle type_handle) : pvector(begin, end, type_handle) { } /** * Creates an array that takes its elements from the given vector. */ template INLINE ReferenceCountedVector:: ReferenceCountedVector(pvector &&from) : pvector(std::move(from)) { } /** * */ template INLINE typename ReferenceCountedVector::size_type ReferenceCountedVector:: size() const { return pvector::size(); } /** * */ template INLINE typename ReferenceCountedVector::iterator ReferenceCountedVector:: insert(iterator position, const Element &x) { return pvector::insert(position, x); } /** * */ template INLINE void ReferenceCountedVector:: insert(iterator position, size_type n, const Element &x) { pvector::insert(position, n, x); } /** * */ template INLINE void ReferenceCountedVector:: erase(iterator position) { pvector::erase(position); } /** * */ template INLINE void ReferenceCountedVector:: erase(iterator first, iterator last) { pvector::erase(first, last); } /** * */ template INLINE void ReferenceCountedVector:: pop_back() { pvector::pop_back(); } /** * */ template INLINE void ReferenceCountedVector:: clear() { pvector::clear(); } /** * */ template INLINE PointerToArrayBase:: PointerToArrayBase(ReferenceCountedVector *ptr) : PointerToBase >(ptr) { } /** * */ template INLINE PointerToArrayBase:: PointerToArrayBase(const PointerToArrayBase ©) : PointerToBase >(copy) { } /** * */ template INLINE PointerToArrayBase:: PointerToArrayBase(PointerToArrayBase &&from) noexcept : PointerToBase >(std::move(from)) { } /** * */ template INLINE PointerToArrayBase:: ~PointerToArrayBase() { }