Skip to content

Instantly share code, notes, and snippets.

@iKrishneel
Created May 12, 2020 02:36
Show Gist options
  • Save iKrishneel/4c24a82948323eb8f608228716b457c8 to your computer and use it in GitHub Desktop.
Save iKrishneel/4c24a82948323eb8f608228716b457c8 to your computer and use it in GitHub Desktop.
class RosNode(Node):
def __init__(self, node_name: str=None):
if node_name is not None:
self._node_name = node_name
super(RosNode, self).__init__(node_name)
self.get_logger().info(
f'Node: {node_name} registered')
@classmethod
def register(cls, name):
rospy.init()
node = cls(name)
return node
# return register_node
def subscriber(self, topic_type, topic_name, cb_func):
def register_subscriber(func):
sub = self.create_subscription(String, 'chatter', cb_func, 10)
return func
return register_subscriber
rosnode = RosNode.register('dashboard')
def callback():
print('In callback')
@rosnode.subscriber(String, 'test', callback)
def setup(args=None):
pass
def main(args=None):
# rospy.init(args=args)
setup()
# node = rospy.create_node('listener')
# sub = node.create_subscription(String, 'chatter', callback, 10)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment