// Generated by gencpp from file moveit_msgs/SaveRobotStateToWarehouse.msg
// DO NOT EDIT!


#ifndef MOVEIT_MSGS_MESSAGE_SAVEROBOTSTATETOWAREHOUSE_H
#define MOVEIT_MSGS_MESSAGE_SAVEROBOTSTATETOWAREHOUSE_H

#include <ros/service_traits.h>


#include <moveit_msgs/SaveRobotStateToWarehouseRequest.h>
#include <moveit_msgs/SaveRobotStateToWarehouseResponse.h>


namespace moveit_msgs
{

struct SaveRobotStateToWarehouse
{

typedef SaveRobotStateToWarehouseRequest Request;
typedef SaveRobotStateToWarehouseResponse Response;
Request request;
Response response;

typedef Request RequestType;
typedef Response ResponseType;

}; // struct SaveRobotStateToWarehouse
} // namespace moveit_msgs


namespace ros
{
namespace service_traits
{


template<>
struct MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouse > {
  static const char* value()
  {
    return "555cb479e433361a8f0a29f1cd7f3ad2";
  }

  static const char* value(const ::moveit_msgs::SaveRobotStateToWarehouse&) { return value(); }
};

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

  static const char* value(const ::moveit_msgs::SaveRobotStateToWarehouse&) { return value(); }
};


// service_traits::MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouseRequest> should match
// service_traits::MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouse >
template<>
struct MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouseRequest>
{
  static const char* value()
  {
    return MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouse >::value();
  }
  static const char* value(const ::moveit_msgs::SaveRobotStateToWarehouseRequest&)
  {
    return value();
  }
};

// service_traits::DataType< ::moveit_msgs::SaveRobotStateToWarehouseRequest> should match
// service_traits::DataType< ::moveit_msgs::SaveRobotStateToWarehouse >
template<>
struct DataType< ::moveit_msgs::SaveRobotStateToWarehouseRequest>
{
  static const char* value()
  {
    return DataType< ::moveit_msgs::SaveRobotStateToWarehouse >::value();
  }
  static const char* value(const ::moveit_msgs::SaveRobotStateToWarehouseRequest&)
  {
    return value();
  }
};

// service_traits::MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouseResponse> should match
// service_traits::MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouse >
template<>
struct MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouseResponse>
{
  static const char* value()
  {
    return MD5Sum< ::moveit_msgs::SaveRobotStateToWarehouse >::value();
  }
  static const char* value(const ::moveit_msgs::SaveRobotStateToWarehouseResponse&)
  {
    return value();
  }
};

// service_traits::DataType< ::moveit_msgs::SaveRobotStateToWarehouseResponse> should match
// service_traits::DataType< ::moveit_msgs::SaveRobotStateToWarehouse >
template<>
struct DataType< ::moveit_msgs::SaveRobotStateToWarehouseResponse>
{
  static const char* value()
  {
    return DataType< ::moveit_msgs::SaveRobotStateToWarehouse >::value();
  }
  static const char* value(const ::moveit_msgs::SaveRobotStateToWarehouseResponse&)
  {
    return value();
  }
};

} // namespace service_traits
} // namespace ros

#endif // MOVEIT_MSGS_MESSAGE_SAVEROBOTSTATETOWAREHOUSE_H
