NASA Astrobee Robot Software  Astrobee Version:
Flight software for the Astrobee robots operating inside the International Space Station.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
structs.h
Go to the documentation of this file.
1 /* Copyright (c) 2017, United States Government, as represented by the
2  * Administrator of the National Aeronautics and Space Administration.
3  *
4  * All rights reserved.
5  *
6  * The Astrobee platform is licensed under the Apache License, Version 2.0
7  * (the "License"); you may not use this file except in compliance with the
8  * License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15  * License for the specific language governing permissions and limitations
16  * under the License.
17  */
18 
19 #ifndef MAPPER_STRUCTS_H_
20 #define MAPPER_STRUCTS_H_
21 
22 // PCL specific includes
23 #include <geometry_msgs/TransformStamped.h>
24 #include <sensor_msgs/PointCloud2.h>
25 #include <pcl/point_cloud.h>
26 #include <pcl/point_types.h>
27 
28 // Locally defined libraries
29 #include <mapper/octoclass.h>
31 
32 // Astrobee message types
33 #include <ff_msgs/ControlGoal.h>
34 
35 // c++ libraries
36 #include <queue>
37 #include <string>
38 #include <mutex>
39 #include <condition_variable> // NOLINT
40 
41 namespace mapper {
42 
43 struct StampedPcl {
44  pcl::PointCloud<pcl::PointXYZ> cloud;
45  geometry_msgs::TransformStamped tf_cam2world;
46 };
47 
48 enum State {
51 };
52 
54  geometry_msgs::TransformStamped tf_cam2world;
55  geometry_msgs::TransformStamped tf_perch2world;
56  geometry_msgs::TransformStamped tf_body2world;
59  std::queue<StampedPcl> pcl_queue;
60 };
61 
62 } // namespace mapper
63 
64 #endif // MAPPER_STRUCTS_H_
mapper::State
State
Definition: structs.h:48
mapper::GlobalVariables::tf_body2world
geometry_msgs::TransformStamped tf_body2world
Definition: structs.h:56
mapper::StampedPcl::cloud
pcl::PointCloud< pcl::PointXYZ > cloud
Definition: structs.h:44
mapper::VALIDATING
@ VALIDATING
Definition: structs.h:50
sampled_traj::SampledTrajectory3D
Definition: sampled_trajectory.h:47
sampled_trajectory.h
mapper::GlobalVariables::tf_cam2world
geometry_msgs::TransformStamped tf_cam2world
Definition: structs.h:54
mapper::GlobalVariables::pcl_queue
std::queue< StampedPcl > pcl_queue
Definition: structs.h:59
mapper::GlobalVariables::octomap
octoclass::OctoClass octomap
Definition: structs.h:57
mapper::GlobalVariables
Definition: structs.h:53
mapper::IDLE
@ IDLE
Definition: structs.h:49
mapper::StampedPcl
Definition: structs.h:43
octoclass::OctoClass
Definition: octoclass.h:37
mapper::StampedPcl::tf_cam2world
geometry_msgs::TransformStamped tf_cam2world
Definition: structs.h:45
mapper::GlobalVariables::tf_perch2world
geometry_msgs::TransformStamped tf_perch2world
Definition: structs.h:55
octoclass.h
mapper::GlobalVariables::sampled_traj
sampled_traj::SampledTrajectory3D sampled_traj
Definition: structs.h:58
mapper
Definition: mapper_nodelet.h:85