11 #ifndef EIGEN_STDDEQUE_H 12 #define EIGEN_STDDEQUE_H 21 #define EIGEN_DEFINE_STL_DEQUE_SPECIALIZATION(...) \ 25 class deque<__VA_ARGS__, std::allocator<__VA_ARGS__> > \ 26 : public deque<__VA_ARGS__, EIGEN_ALIGNED_ALLOCATOR<__VA_ARGS__> > \ 28 typedef deque<__VA_ARGS__, EIGEN_ALIGNED_ALLOCATOR<__VA_ARGS__> > deque_base; \ 30 typedef __VA_ARGS__ value_type; \ 31 typedef deque_base::allocator_type allocator_type; \ 32 typedef deque_base::size_type size_type; \ 33 typedef deque_base::iterator iterator; \ 34 explicit deque(const allocator_type& a = allocator_type()) : deque_base(a) {} \ 35 template<typename InputIterator> \ 36 deque(InputIterator first, InputIterator last, const allocator_type& a = allocator_type()) : deque_base(first, last, a) {} \ 37 deque(const deque& c) : deque_base(c) {} \ 38 explicit deque(size_type num, const value_type& val = value_type()) : deque_base(num, val) {} \ 39 deque(iterator start_, iterator end_) : deque_base(start_, end_) {} \ 40 deque& operator=(const deque& x) { \ 41 deque_base::operator=(x); \ 48 #if !EIGEN_HAS_CXX11_CONTAINERS && !(defined(_GLIBCXX_DEQUE) && (!EIGEN_GNUC_AT_LEAST(4,1))) 52 #define EIGEN_STD_DEQUE_SPECIALIZATION_BODY \ 54 typedef T value_type; \ 55 typedef typename deque_base::allocator_type allocator_type; \ 56 typedef typename deque_base::size_type size_type; \ 57 typedef typename deque_base::iterator iterator; \ 58 typedef typename deque_base::const_iterator const_iterator; \ 59 explicit deque(const allocator_type& a = allocator_type()) : deque_base(a) {} \ 60 template<typename InputIterator> \ 61 deque(InputIterator first, InputIterator last, const allocator_type& a = allocator_type()) \ 62 : deque_base(first, last, a) {} \ 63 deque(const deque& c) : deque_base(c) {} \ 64 explicit deque(size_type num, const value_type& val = value_type()) : deque_base(num, val) {} \ 65 deque(iterator start_, iterator end_) : deque_base(start_, end_) {} \ 66 deque& operator=(const deque& x) { \ 67 deque_base::operator=(x); \ 73 :
public deque<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T),
74 Eigen::aligned_allocator_indirection<EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T)> >
85 void resize(size_type new_size,
const value_type&
x)
92 void push_back(
const value_type& x)
93 { deque_base::push_back(x); }
94 void push_front(
const value_type& x)
95 { deque_base::push_front(x); }
99 void insert(const_iterator position, size_type new_size,
const value_type& x)
103 void resize(size_type new_size,
const value_type& x)
114 #endif // check whether specialization is actually required 116 #endif // EIGEN_STDDEQUE_H
deque< EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T), Eigen::aligned_allocator_indirection< EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T)> > deque_base
void resize(size_type new_size, const value_type &x)
#define EIGEN_STD_DEQUE_SPECIALIZATION_BODY
EIGEN_STD_DEQUE_SPECIALIZATION_BODY void resize(size_type new_size)
Eigen::Triplet< double > T
#define EIGEN_ALIGNED_ALLOCATOR
#define EIGEN_WORKAROUND_MSVC_STL_SUPPORT(T)
static EIGEN_DEPRECATED const end_t end
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
Point3 position(const NavState &X, OptionalJacobian< 3, 9 > H)