Apollo 10.0
自动驾驶开放平台
eigen_defs.h
浏览该文件的文档.
1/******************************************************************************
2 * Copyright 2020 The Apollo Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *****************************************************************************/
16
17#pragma once
18
19#include <deque>
20#include <functional>
21#include <map>
22#include <utility>
23#include <vector>
24
25#include "Eigen/Geometry"
26
27namespace apollo {
28namespace common {
29
30// Using STL Containers with Eigen:
31// https://eigen.tuxfamily.org/dox/group__TopicStlContainers.html
32template <class EigenType>
33using EigenVector = std::vector<EigenType, Eigen::aligned_allocator<EigenType>>;
34
35template <class EigenType>
36using EigenDeque = std::deque<EigenType, Eigen::aligned_allocator<EigenType>>;
37
38template <typename T, class EigenType>
39using EigenMap = std::map<T, EigenType, std::less<T>,
40 Eigen::aligned_allocator<std::pair<const T, EigenType>>>;
41
42template <typename T, class EigenType>
43using EigenMultiMap = std::multimap<T, EigenType, std::less<T>,
44 Eigen::aligned_allocator<std::pair<const T, EigenType>>>;
45
48
49} // namespace common
50} // namespace apollo
EigenVector< Eigen::Affine3d > EigenAffine3dVec
Definition eigen_defs.h:47
std::map< T, EigenType, std::less< T >, Eigen::aligned_allocator< std::pair< const T, EigenType > > > EigenMap
Definition eigen_defs.h:40
std::multimap< T, EigenType, std::less< T >, Eigen::aligned_allocator< std::pair< const T, EigenType > > > EigenMultiMap
Definition eigen_defs.h:44
std::vector< EigenType, Eigen::aligned_allocator< EigenType > > EigenVector
Definition eigen_defs.h:33
EigenVector< Eigen::Vector3d > EigenVector3dVec
Definition eigen_defs.h:46
std::deque< EigenType, Eigen::aligned_allocator< EigenType > > EigenDeque
Definition eigen_defs.h:36
class register implement
Definition arena_queue.h:37