added more smartpointer query_interface's