00001 """autogenerated by genmsg_py from PR2GripperForceServoActionGoal.msg. Do not edit."""
00002 import roslib.message
00003 import struct
00004
00005 import roslib.rostime
00006 import actionlib_msgs.msg
00007 import pr2_gripper_sensor_msgs.msg
00008 import std_msgs.msg
00009
00010 class PR2GripperForceServoActionGoal(roslib.message.Message):
00011 _md5sum = "6fef46f6d468335bf123ba62175e1dc9"
00012 _type = "pr2_gripper_sensor_msgs/PR2GripperForceServoActionGoal"
00013 _has_header = True
00014 _full_text = """# ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00015
00016 Header header
00017 actionlib_msgs/GoalID goal_id
00018 PR2GripperForceServoGoal goal
00019
00020 ================================================================================
00021 MSG: std_msgs/Header
00022 # Standard metadata for higher-level stamped data types.
00023 # This is generally used to communicate timestamped data
00024 # in a particular coordinate frame.
00025 #
00026 # sequence ID: consecutively increasing ID
00027 uint32 seq
00028 #Two-integer timestamp that is expressed as:
00029 # * stamp.secs: seconds (stamp_secs) since epoch
00030 # * stamp.nsecs: nanoseconds since stamp_secs
00031 # time-handling sugar is provided by the client library
00032 time stamp
00033 #Frame this data is associated with
00034 # 0: no frame
00035 # 1: global frame
00036 string frame_id
00037
00038 ================================================================================
00039 MSG: actionlib_msgs/GoalID
00040 # The stamp should store the time at which this goal was requested.
00041 # It is used by an action server when it tries to preempt all
00042 # goals that were requested before a certain time
00043 time stamp
00044
00045 # The id provides a way to associate feedback and
00046 # result message with specific goal requests. The id
00047 # specified must be unique.
00048 string id
00049
00050
00051 ================================================================================
00052 MSG: pr2_gripper_sensor_msgs/PR2GripperForceServoGoal
00053 # ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
00054 # Action to launch the gripper into force servoing mode
00055
00056 #goals
00057 PR2GripperForceServoCommand command
00058
00059 ================================================================================
00060 MSG: pr2_gripper_sensor_msgs/PR2GripperForceServoCommand
00061 # the amount of fingertip force (in Newtons) to apply.
00062 # NOTE: the joint will squeeze until each finger reaches this level
00063 # values < 0 (opening force) are ignored
00064 #
00065 # 10 N can crack an egg or crush a soda can.
00066 # 15 N can firmly pick up a can of soup.
00067 # Experiment on your own.
00068 #
00069 float64 fingertip_force
00070 """
00071 __slots__ = ['header','goal_id','goal']
00072 _slot_types = ['Header','actionlib_msgs/GoalID','pr2_gripper_sensor_msgs/PR2GripperForceServoGoal']
00073
00074 def __init__(self, *args, **kwds):
00075 """
00076 Constructor. Any message fields that are implicitly/explicitly
00077 set to None will be assigned a default value. The recommend
00078 use is keyword arguments as this is more robust to future message
00079 changes. You cannot mix in-order arguments and keyword arguments.
00080
00081 The available fields are:
00082 header,goal_id,goal
00083
00084 @param args: complete set of field values, in .msg order
00085 @param kwds: use keyword arguments corresponding to message field names
00086 to set specific fields.
00087 """
00088 if args or kwds:
00089 super(PR2GripperForceServoActionGoal, self).__init__(*args, **kwds)
00090
00091 if self.header is None:
00092 self.header = std_msgs.msg._Header.Header()
00093 if self.goal_id is None:
00094 self.goal_id = actionlib_msgs.msg.GoalID()
00095 if self.goal is None:
00096 self.goal = pr2_gripper_sensor_msgs.msg.PR2GripperForceServoGoal()
00097 else:
00098 self.header = std_msgs.msg._Header.Header()
00099 self.goal_id = actionlib_msgs.msg.GoalID()
00100 self.goal = pr2_gripper_sensor_msgs.msg.PR2GripperForceServoGoal()
00101
00102 def _get_types(self):
00103 """
00104 internal API method
00105 """
00106 return self._slot_types
00107
00108 def serialize(self, buff):
00109 """
00110 serialize message into buffer
00111 @param buff: buffer
00112 @type buff: StringIO
00113 """
00114 try:
00115 _x = self
00116 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00117 _x = self.header.frame_id
00118 length = len(_x)
00119 buff.write(struct.pack('<I%ss'%length, length, _x))
00120 _x = self
00121 buff.write(_struct_2I.pack(_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs))
00122 _x = self.goal_id.id
00123 length = len(_x)
00124 buff.write(struct.pack('<I%ss'%length, length, _x))
00125 buff.write(_struct_d.pack(self.goal.command.fingertip_force))
00126 except struct.error, se: self._check_types(se)
00127 except TypeError, te: self._check_types(te)
00128
00129 def deserialize(self, str):
00130 """
00131 unpack serialized message in str into this message instance
00132 @param str: byte array of serialized message
00133 @type str: str
00134 """
00135 try:
00136 if self.header is None:
00137 self.header = std_msgs.msg._Header.Header()
00138 if self.goal_id is None:
00139 self.goal_id = actionlib_msgs.msg.GoalID()
00140 if self.goal is None:
00141 self.goal = pr2_gripper_sensor_msgs.msg.PR2GripperForceServoGoal()
00142 end = 0
00143 _x = self
00144 start = end
00145 end += 12
00146 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00147 start = end
00148 end += 4
00149 (length,) = _struct_I.unpack(str[start:end])
00150 start = end
00151 end += length
00152 self.header.frame_id = str[start:end]
00153 _x = self
00154 start = end
00155 end += 8
00156 (_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00157 start = end
00158 end += 4
00159 (length,) = _struct_I.unpack(str[start:end])
00160 start = end
00161 end += length
00162 self.goal_id.id = str[start:end]
00163 start = end
00164 end += 8
00165 (self.goal.command.fingertip_force,) = _struct_d.unpack(str[start:end])
00166 return self
00167 except struct.error, e:
00168 raise roslib.message.DeserializationError(e)
00169
00170
00171 def serialize_numpy(self, buff, numpy):
00172 """
00173 serialize message with numpy array types into buffer
00174 @param buff: buffer
00175 @type buff: StringIO
00176 @param numpy: numpy python module
00177 @type numpy module
00178 """
00179 try:
00180 _x = self
00181 buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00182 _x = self.header.frame_id
00183 length = len(_x)
00184 buff.write(struct.pack('<I%ss'%length, length, _x))
00185 _x = self
00186 buff.write(_struct_2I.pack(_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs))
00187 _x = self.goal_id.id
00188 length = len(_x)
00189 buff.write(struct.pack('<I%ss'%length, length, _x))
00190 buff.write(_struct_d.pack(self.goal.command.fingertip_force))
00191 except struct.error, se: self._check_types(se)
00192 except TypeError, te: self._check_types(te)
00193
00194 def deserialize_numpy(self, str, numpy):
00195 """
00196 unpack serialized message in str into this message instance using numpy for array types
00197 @param str: byte array of serialized message
00198 @type str: str
00199 @param numpy: numpy python module
00200 @type numpy: module
00201 """
00202 try:
00203 if self.header is None:
00204 self.header = std_msgs.msg._Header.Header()
00205 if self.goal_id is None:
00206 self.goal_id = actionlib_msgs.msg.GoalID()
00207 if self.goal is None:
00208 self.goal = pr2_gripper_sensor_msgs.msg.PR2GripperForceServoGoal()
00209 end = 0
00210 _x = self
00211 start = end
00212 end += 12
00213 (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00214 start = end
00215 end += 4
00216 (length,) = _struct_I.unpack(str[start:end])
00217 start = end
00218 end += length
00219 self.header.frame_id = str[start:end]
00220 _x = self
00221 start = end
00222 end += 8
00223 (_x.goal_id.stamp.secs, _x.goal_id.stamp.nsecs,) = _struct_2I.unpack(str[start:end])
00224 start = end
00225 end += 4
00226 (length,) = _struct_I.unpack(str[start:end])
00227 start = end
00228 end += length
00229 self.goal_id.id = str[start:end]
00230 start = end
00231 end += 8
00232 (self.goal.command.fingertip_force,) = _struct_d.unpack(str[start:end])
00233 return self
00234 except struct.error, e:
00235 raise roslib.message.DeserializationError(e)
00236
00237 _struct_I = roslib.message.struct_I
00238 _struct_3I = struct.Struct("<3I")
00239 _struct_2I = struct.Struct("<2I")
00240 _struct_d = struct.Struct("<d")