code: def make_seg_table(workflow, seg_files, seg_names, out_dir, tags=None,
                    title_text=None, description=None):
      
      seg_files = list(seg_files)
      seg_names = list(seg_names)
      if tags is None: tags = []
      makedir(out_dir)
      node = PlotExecutable(workflow.cp, 'page_segtable', ifos=workflow.ifos,
                      out_dir=out_dir, tags=tags).create_node()
      node.add_input_list_opt('--segment-files', seg_files)
      quoted_seg_names = []
      for s in seg_names:
          quoted_seg_names.append("'" + s + "'")
      node.add_opt('--segment-names', ' '.join(quoted_seg_names))
      if description:
          node.add_opt('--description', "'" + description + "'")
      if title_text:
          node.add_opt('--title-text', "'" + title_text + "'")
      node.new_output_file_opt(workflow.analysis_time, '.html', '--output-file')
      workflow += node
      return node.output_files[0]
docs: Creates a node in the workflow for writing the segment summary
      table. Returns a File instances for the output file.