"""Holds ros2 communication interface data.It provides the names and types of every interface (topics, services, actions) used by the motion stack. So no need to remember the right name with the right spelling, import this and use communication.lvl1.output.joint_state.name to get ``joint_read`` """fromtypingimportNamedTuple,Typefromgeometry_msgs.msgimportTransformfrommotion_stack_msgs.srvimportReturnJointStatefromsensor_msgs.msgimportJointStatefromstd_srvs.srvimportEmptyasSrvEmpty
[docs]deflimb_ns(limb_number:int)->str:""" Args: limb_number: Number of the limb Returns: Namespace of the limb. """returnf"leg{limb_number}"
[docs]classInterf(NamedTuple):"""Ros2 interface class with type and name"""type:Typename:str