// inference/Factor.h classFactor{protected: /// The keys involved in this factor KeyVector keys_;}// inference/Key.htypedef FastVector<Key> KeyVector;// base/types.htypedef std::uint64_t Key; /// Integer nonlinear key typetypedef std::uint64_t FactorIndex; /// Integer nonlinear factor index typetypedefptrdiff_t DenseIndex; /// The index type for Eigen objects// base/FastVector.h// FastVector is a type alias to a std::vector with a custom memory allocator.// The particular allocator depends on GTSAM's cmake configuration.template <typenameT>usingFastVector= std::vector<T,typename internal::FastDefaultVectorAllocator<T>::type>;// base/FastDefaultAllocator.h/// Default allocator for vector types (we never use boost pool for vectors)template<typenameT>structFastDefaultVectorAllocator {#ifdefinedGTSAM_ALLOCATOR_TBBtypedef tbb::tbb_allocator<T> type;staticconstbool isBoost =false;staticconstbool isTBB =true;staticconstbool isSTL =false;#elsetypedef std::allocator<T> type;staticconstbool isBoost =false;staticconstbool isTBB =false;staticconstbool isSTL =true;#endif };