2016-07-20 97 views
0

所以我有一個類,在它的init函數中,我訂閱了一個相機,它的回調函數是在我的類中創建的。即:取消訂閱ROS主題 - 蟒蛇

class example(object): 
    def __init__(self): 
    rospy.subscriber("/cameras/left_hand_camera/image",Image,self.callback_viewer) 
    def callback_viewer(self,data): 
    try: 
     cv_image = self.bridge.imgmsg_to_cv2(data, "bgr8") 
    except CvBridgeError as e: 
     print(e) 
    cv2.imshow("window", cv_image) 

所以我的項目的目的,我需要創建另一個類,其中,除了做一些其他的東西,退訂所有它當前訂閱的主題。但我不知道如何使用列出的未訂閱者功能here

任何人都可以幫助我,那我將如何使用該功能?

回答

2

我不明白到底你做什麼,但是當你訂閱一個主題,你可以寫這樣的事情:

sub = rospy.subscriber("/cameras/left_hand_camera/image",Image,self.callback_viewer) 

然後,當你不得不取消您只需要做:

sub.unregister() 

希望這回答你的問題。