// Generated by gencpp from file robot_sensor_msgs/LaserEcho.msg
// DO NOT EDIT!


#ifndef ROBOT_SENSOR_MSGS_MESSAGE_LASERECHO_H
#define ROBOT_SENSOR_MSGS_MESSAGE_LASERECHO_H


#include <string>
#include <vector>
#include <memory>
#include <boost/shared_ptr.hpp>

namespace robot_sensor_msgs
{
template <class ContainerAllocator>
struct LaserEcho_
{
  typedef LaserEcho_<ContainerAllocator> Type;

  LaserEcho_()
    : echoes()  {
    }
  LaserEcho_(const ContainerAllocator& _alloc)
    : echoes(_alloc)  {
  (void)_alloc;
    }



   typedef std::vector<float, typename std::allocator_traits<ContainerAllocator>::template rebind_alloc<float>> _echoes_type;
  _echoes_type echoes;





  typedef boost::shared_ptr< ::robot_sensor_msgs::LaserEcho_<ContainerAllocator> > Ptr;
  typedef boost::shared_ptr< ::robot_sensor_msgs::LaserEcho_<ContainerAllocator> const> ConstPtr;

}; // struct LaserEcho_

typedef ::robot_sensor_msgs::LaserEcho_<std::allocator<void> > LaserEcho;

typedef boost::shared_ptr< ::robot_sensor_msgs::LaserEcho > LaserEchoPtr;
typedef boost::shared_ptr< ::robot_sensor_msgs::LaserEcho const> LaserEchoConstPtr;

// constants requiring out of line definition

template<typename ContainerAllocator1, typename ContainerAllocator2>
bool operator==(const ::robot_sensor_msgs::LaserEcho_<ContainerAllocator1> & lhs, const ::robot_sensor_msgs::LaserEcho_<ContainerAllocator2> & rhs)
{
  return lhs.echoes == rhs.echoes;
}

template<typename ContainerAllocator1, typename ContainerAllocator2>
bool operator!=(const ::robot_sensor_msgs::LaserEcho_<ContainerAllocator1> & lhs, const ::robot_sensor_msgs::LaserEcho_<ContainerAllocator2> & rhs)
{
  return !(lhs == rhs);
}


} // namespace robot_sensor_msgs

#endif // ROBOT_SENSOR_MSGS_MESSAGE_LASERECHO_H
