// Generated by gencpp from file common/cam_sync_ros_srv.msg
// DO NOT EDIT!


#ifndef COMMON_MESSAGE_CAM_SYNC_ROS_SRV_H
#define COMMON_MESSAGE_CAM_SYNC_ROS_SRV_H

#include <ros/service_traits.h>


#include <common/cam_sync_ros_srvRequest.h>
#include <common/cam_sync_ros_srvResponse.h>


namespace common
{

struct cam_sync_ros_srv
{

typedef cam_sync_ros_srvRequest Request;
typedef cam_sync_ros_srvResponse Response;
Request request;
Response response;

typedef Request RequestType;
typedef Response ResponseType;

}; // struct cam_sync_ros_srv
} // namespace common


namespace ros
{
namespace service_traits
{


template<>
struct MD5Sum< ::common::cam_sync_ros_srv > {
  static const char* value()
  {
    return "5e3db1be5c9f25b882d78ac2ccf87e1f";
  }

  static const char* value(const ::common::cam_sync_ros_srv&) { return value(); }
};

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

  static const char* value(const ::common::cam_sync_ros_srv&) { return value(); }
};


// service_traits::MD5Sum< ::common::cam_sync_ros_srvRequest> should match
// service_traits::MD5Sum< ::common::cam_sync_ros_srv >
template<>
struct MD5Sum< ::common::cam_sync_ros_srvRequest>
{
  static const char* value()
  {
    return MD5Sum< ::common::cam_sync_ros_srv >::value();
  }
  static const char* value(const ::common::cam_sync_ros_srvRequest&)
  {
    return value();
  }
};

// service_traits::DataType< ::common::cam_sync_ros_srvRequest> should match
// service_traits::DataType< ::common::cam_sync_ros_srv >
template<>
struct DataType< ::common::cam_sync_ros_srvRequest>
{
  static const char* value()
  {
    return DataType< ::common::cam_sync_ros_srv >::value();
  }
  static const char* value(const ::common::cam_sync_ros_srvRequest&)
  {
    return value();
  }
};

// service_traits::MD5Sum< ::common::cam_sync_ros_srvResponse> should match
// service_traits::MD5Sum< ::common::cam_sync_ros_srv >
template<>
struct MD5Sum< ::common::cam_sync_ros_srvResponse>
{
  static const char* value()
  {
    return MD5Sum< ::common::cam_sync_ros_srv >::value();
  }
  static const char* value(const ::common::cam_sync_ros_srvResponse&)
  {
    return value();
  }
};

// service_traits::DataType< ::common::cam_sync_ros_srvResponse> should match
// service_traits::DataType< ::common::cam_sync_ros_srv >
template<>
struct DataType< ::common::cam_sync_ros_srvResponse>
{
  static const char* value()
  {
    return DataType< ::common::cam_sync_ros_srv >::value();
  }
  static const char* value(const ::common::cam_sync_ros_srvResponse&)
  {
    return value();
  }
};

} // namespace service_traits
} // namespace ros

#endif // COMMON_MESSAGE_CAM_SYNC_ROS_SRV_H
