nodes: 0, module; 1, function_definition; 2, function_name:get_videos_for_course; 3, parameters; 4, block; 5, identifier:course_id; 6, default_parameter; 7, default_parameter; 8, default_parameter; 9, expression_statement; 10, return_statement; 11, identifier:sort_field; 12, None; 13, identifier:sort_dir; 14, attribute; 15, identifier:pagination_conf; 16, None; 17, comment:"""
      Returns an iterator of videos for the given course id.
  
      Args:
          course_id (String)
          sort_field (VideoSortField)
          sort_dir (SortDirection)
  
      Returns:
          A generator expression that contains the videos found, sorted by the
          given field and direction, with ties broken by edx_video_id to ensure a
          total order.
      """; 18, call; 19, identifier:SortDirection; 20, identifier:asc; 21, identifier:_get_videos_for_filter; 22, argument_list; 23, dictionary; 24, identifier:sort_field; 25, identifier:sort_dir; 26, identifier:pagination_conf; 27, pair; 28, pair; 29, string; 30, call; 31, string; 32, False; 33, string_content:courses__course_id; 34, attribute; 35, argument_list; 36, string_content:courses__is_hidden; 37, identifier:six; 38, identifier:text_type; 39, identifier:course_id
code: def get_videos_for_course(course_id, sort_field=None, sort_dir=SortDirection.asc, pagination_conf=None):
      """
      Returns an iterator of videos for the given course id.
  
      Args:
          course_id (String)
          sort_field (VideoSortField)
          sort_dir (SortDirection)
  
      Returns:
          A generator expression that contains the videos found, sorted by the
          given field and direction, with ties broken by edx_video_id to ensure a
          total order.
      """
      return _get_videos_for_filter(
          {'courses__course_id': six.text_type(course_id), 'courses__is_hidden': False},
          sort_field,
          sort_dir,
          pagination_conf,
      )