made joint state callback virtual method