Apollo  6.0
Open source self driving car software
pcl_point_types.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Copyright 2017 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 
22 #pragma once
23 
24 #include "pcl/point_types.h"
25 
26 namespace apollo {
27 namespace localization {
28 namespace msf {
29 namespace velodyne {
30 
31 struct PointXYZIRT {
32  float x;
33  float y;
34  float z;
35  unsigned char intensity;
36  unsigned char ring;
37  double timestamp;
38  EIGEN_MAKE_ALIGNED_OPERATOR_NEW // make sure our new allocators are aligned
39 } EIGEN_ALIGN16; // enforce SSE padding for correct memory alignment
40 
41 struct PointXYZIT {
42  float x;
43  float y;
44  float z;
45  unsigned char intensity;
46  double timestamp;
47  EIGEN_MAKE_ALIGNED_OPERATOR_NEW // make sure our new allocators are aligned
48 } EIGEN_ALIGN16; // enforce SSE padding for correct memory alignment
49 
50 struct PointXYZIRTd {
51  double x;
52  double y;
53  double z;
54  unsigned char intensity;
55  unsigned char ring;
56  double timestamp;
57  EIGEN_MAKE_ALIGNED_OPERATOR_NEW // make sure our new allocators are aligned
58 } EIGEN_ALIGN16; // enforce SSE padding for correct memory alignment
59 
60 struct PointXYZITd {
61  double x;
62  double y;
63  double z;
64  unsigned char intensity;
65  double timestamp;
66  EIGEN_MAKE_ALIGNED_OPERATOR_NEW // make sure our new allocators are aligned
67 } EIGEN_ALIGN16; // enforce SSE padding for correct memory alignment
68 
69 } // namespace velodyne
70 } // namespace msf
71 } // namespace localization
72 } // namespace apollo
73 
74 POINT_CLOUD_REGISTER_POINT_STRUCT(
76  (float, x, x)(float, y, y)(float, z, z)(std::uint8_t, intensity,
77  intensity)(double, timestamp,
78  timestamp))
79 
80 POINT_CLOUD_REGISTER_POINT_STRUCT(
82  (float, x, x)(float, y, y)(float, z, z)(std::uint8_t, intensity, intensity)(
83  std::uint8_t, ring, ring)(double, timestamp, timestamp))
84 
85 POINT_CLOUD_REGISTER_POINT_STRUCT(
87  (double, x, x)(double, y, y)(double, z, z)(std::uint8_t, intensity,
88  intensity)(double, timestamp,
89  timestamp))
90 
91 POINT_CLOUD_REGISTER_POINT_STRUCT(
93  (double, x, x)(double, y, y)(double, z, z)(
94  std::uint8_t, intensity, intensity)(std::uint8_t, ring,
95  ring)(double, timestamp, timestamp))
double timestamp
Definition: pcl_point_types.h:37
unsigned char intensity
Definition: pcl_point_types.h:64
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
unsigned char intensity
Definition: pcl_point_types.h:35
float z
Definition: pcl_point_types.h:34
unsigned char ring
Definition: pcl_point_types.h:36
double timestamp
Definition: pcl_point_types.h:56
double timestamp
Definition: pcl_point_types.h:46
double z
Definition: pcl_point_types.h:63
double x
Definition: pcl_point_types.h:51
unsigned char intensity
Definition: pcl_point_types.h:54
float x
Definition: pcl_point_types.h:42
double timestamp
Definition: pcl_point_types.h:65
float y
Definition: pcl_point_types.h:33
Definition: pcl_point_types.h:60
double y
Definition: pcl_point_types.h:52
float z
Definition: pcl_point_types.h:44
Definition: pcl_point_types.h:31
unsigned char intensity
Definition: pcl_point_types.h:45
float x
Definition: pcl_point_types.h:32
struct apollo::localization::msf::velodyne::PointXYZIRT EIGEN_ALIGN16
double x
Definition: pcl_point_types.h:61
float y
Definition: pcl_point_types.h:43
double z
Definition: pcl_point_types.h:53
unsigned char ring
Definition: pcl_point_types.h:55
double y
Definition: pcl_point_types.h:62
Definition: pcl_point_types.h:41