Program Listing for File scan_os.hpp

Return to documentation for file (include/ros2_ouster/scan_os.hpp)

// Copyright 2020, Steve Macenski
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#ifndef ROS2_OUSTER__SCAN_OS_HPP_
#define ROS2_OUSTER__SCAN_OS_HPP_

#define PCL_NO_PRECOMPILE
#include "pcl/point_types.h"

namespace scan_os
{

struct EIGEN_ALIGN16 ScanOS
{
  float intensity;
  uint32_t range;
  uint8_t ring;

  static inline ScanOS make(
    float x, float y, float z, float intensity,
    uint32_t t, uint16_t reflectivity, uint8_t ring, uint8_t col,
    uint16_t noise, uint32_t range)
  {
    return {intensity, range, ring};
  }
};

}  // namespace scan_os

#endif  // ROS2_OUSTER__SCAN_OS_HPP_