// Generated by gencpp from file uavatt_ros/set_saturation_weights.msg
// DO NOT EDIT!


#ifndef UAVATT_ROS_MESSAGE_SET_SATURATION_WEIGHTS_H
#define UAVATT_ROS_MESSAGE_SET_SATURATION_WEIGHTS_H

#include <ros/service_traits.h>


#include <uavatt_ros/set_saturation_weightsRequest.h>
#include <uavatt_ros/set_saturation_weightsResponse.h>


namespace uavatt_ros
{

struct set_saturation_weights
{

typedef set_saturation_weightsRequest Request;
typedef set_saturation_weightsResponse Response;
Request request;
Response response;

typedef Request RequestType;
typedef Response ResponseType;

}; // struct set_saturation_weights
} // namespace uavatt_ros


namespace ros
{
namespace service_traits
{


template<>
struct MD5Sum< ::uavatt_ros::set_saturation_weights > {
  static const char* value()
  {
    return "6fb8e53a670cbe639cc3b08d851ead5c";
  }

  static const char* value(const ::uavatt_ros::set_saturation_weights&) { return value(); }
};

template<>
struct DataType< ::uavatt_ros::set_saturation_weights > {
  static const char* value()
  {
    return "uavatt_ros/set_saturation_weights";
  }

  static const char* value(const ::uavatt_ros::set_saturation_weights&) { return value(); }
};


// service_traits::MD5Sum< ::uavatt_ros::set_saturation_weightsRequest> should match
// service_traits::MD5Sum< ::uavatt_ros::set_saturation_weights >
template<>
struct MD5Sum< ::uavatt_ros::set_saturation_weightsRequest>
{
  static const char* value()
  {
    return MD5Sum< ::uavatt_ros::set_saturation_weights >::value();
  }
  static const char* value(const ::uavatt_ros::set_saturation_weightsRequest&)
  {
    return value();
  }
};

// service_traits::DataType< ::uavatt_ros::set_saturation_weightsRequest> should match
// service_traits::DataType< ::uavatt_ros::set_saturation_weights >
template<>
struct DataType< ::uavatt_ros::set_saturation_weightsRequest>
{
  static const char* value()
  {
    return DataType< ::uavatt_ros::set_saturation_weights >::value();
  }
  static const char* value(const ::uavatt_ros::set_saturation_weightsRequest&)
  {
    return value();
  }
};

// service_traits::MD5Sum< ::uavatt_ros::set_saturation_weightsResponse> should match
// service_traits::MD5Sum< ::uavatt_ros::set_saturation_weights >
template<>
struct MD5Sum< ::uavatt_ros::set_saturation_weightsResponse>
{
  static const char* value()
  {
    return MD5Sum< ::uavatt_ros::set_saturation_weights >::value();
  }
  static const char* value(const ::uavatt_ros::set_saturation_weightsResponse&)
  {
    return value();
  }
};

// service_traits::DataType< ::uavatt_ros::set_saturation_weightsResponse> should match
// service_traits::DataType< ::uavatt_ros::set_saturation_weights >
template<>
struct DataType< ::uavatt_ros::set_saturation_weightsResponse>
{
  static const char* value()
  {
    return DataType< ::uavatt_ros::set_saturation_weights >::value();
  }
  static const char* value(const ::uavatt_ros::set_saturation_weightsResponse&)
  {
    return value();
  }
};

} // namespace service_traits
} // namespace ros

#endif // UAVATT_ROS_MESSAGE_SET_SATURATION_WEIGHTS_H
