23 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 24 #include <boost/serialization/nvp.hpp> 25 #include <boost/serialization/version.hpp> 26 #if BOOST_VERSION >= 107400 27 #include <boost/serialization/library_version_type.hpp> 29 #include <boost/serialization/list.hpp> 42 template<
typename VALUE>
43 class FastList:
public std::list<VALUE, typename internal::FastDefaultAllocator<VALUE>::type> {
47 typedef std::list<VALUE, typename internal::FastDefaultAllocator<VALUE>::type> Base;
53 template<
typename INPUTITERATOR>
54 explicit FastList(INPUTITERATOR first, INPUTITERATOR last) : Base(first, last) {}
63 FastList(std::initializer_list<VALUE> l) : Base(l) {}
65 #ifdef GTSAM_ALLOCATOR_BOOSTPOOL 67 FastList(
const std::list<VALUE>& x) {
72 Base::assign(x.begin(), x.end());
77 operator std::list<VALUE>()
const {
78 return std::list<VALUE>(this->begin(), this->end());
82 #ifdef GTSAM_ENABLE_BOOST_SERIALIZATION 84 friend class boost::serialization::access;
85 template<
class ARCHIVE>
86 void serialize(ARCHIVE & ar,
const unsigned int ) {
87 ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Base);
std::string serialize(const T &input)
serializes to a string
Definition: serialization.h:113
FastList(std::initializer_list< VALUE > l)
Construct from c++11 initializer list:
Definition: FastList.h:63
FastList(const Base &x)
Definition: FastList.h:60
FastList(INPUTITERATOR first, INPUTITERATOR last)
Definition: FastList.h:54
Definition: FastList.h:43
Definition: chartTesting.h:28
FastList()
Definition: FastList.h:50
FastList(const FastList< VALUE > &x)
Definition: FastList.h:57
An easy way to control which allocator is used for Fast* collections.