DefinitionSummary

class DefinitionSummary(sum_op, hed_schema, known_defs=None)[source]

Manager for summaries of the definitions used in a dataset.

Methods

DefinitionSummary.__init__(sum_op, hed_schema)

Constructor for the summary of definitions.

DefinitionSummary.dump_summary(filename, summary)

DefinitionSummary.get_details_dict(def_gatherer)

Return the summary-specific information in a dictionary.

DefinitionSummary.get_individual(summary_details)

Return a dictionary of the individual file summaries.

DefinitionSummary.get_summary([...])

Return a summary dictionary with the information.

DefinitionSummary.get_summary_details([...])

Return a dictionary with the details for individual files and the overall dataset.

DefinitionSummary.get_text_summary([...])

Return a complete text summary by assembling the individual pieces.

DefinitionSummary.get_text_summary_details([...])

Return a text summary of the information represented by this summary.

DefinitionSummary.merge_all_info()

Create an Object containing the definition summary.

DefinitionSummary.save(save_dir[, ...])

Save the summaries using the format indicated.

DefinitionSummary.save_visualizations(save_dir)

Save summary visualizations, if any, using the format indicated.

DefinitionSummary.update_summary(new_info)

Update the summary for a given tabular input file.

Attributes

DefinitionSummary.DISPLAY_INDENT

DefinitionSummary.INDIVIDUAL_SUMMARIES_PATH

DefinitionSummary.__init__(sum_op, hed_schema, known_defs=None)[source]

Constructor for the summary of definitions.

Parameters:
  • sum_op (BaseOp) – Summary operation class for gathering definitions.

  • hed_schema (HedSchema or HedSchemaGroup) – Schema used for the dataset.

  • known_defs (str or list or DefinitionDict) – Definitions already known to be used.

static DefinitionSummary.dump_summary(filename, summary)
DefinitionSummary.get_details_dict(def_gatherer)[source]

Return the summary-specific information in a dictionary.

Parameters:

def_gatherer (DefExpandGatherer) – Contains the resolved dictionaries.

Returns:

dictionary with the summary results.

Return type:

dict

DefinitionSummary.get_individual(summary_details, separately=True)

Return a dictionary of the individual file summaries.

Parameters:
  • summary_details (dict) – Dictionary of the individual file summaries.

  • separately (bool) – If True (the default), each individual summary has a header for separate output.

DefinitionSummary.get_summary(individual_summaries='separate')

Return a summary dictionary with the information.

Parameters:

individual_summaries (str) – “separate”, “consolidated”, or “none”

Returns:

dict - dictionary with “Dataset” and “Individual files” keys.

Notes: The individual_summaries value is processed as follows:
  • “separate” individual summaries are to be in separate files.

  • “consolidated” means that the individual summaries are in same file as overall summary.

  • “none” means that only the overall summary is produced.

DefinitionSummary.get_summary_details(include_individual=True)

Return a dictionary with the details for individual files and the overall dataset.

Parameters:

include_individual (bool) – If True, summaries for individual files are included.

Returns:

dict - a dictionary with ‘Dataset’ and ‘Individual files’ keys.

Notes

  • The ‘Dataset’ value is either a string or a dictionary with the overall summary.

  • The ‘Individual files’ value is dictionary whose keys are file names and values are

    their corresponding summaries.

Users are expected to provide merge_all_info and get_details_dict functions to support this.

DefinitionSummary.get_text_summary(individual_summaries='separate')

Return a complete text summary by assembling the individual pieces.

Parameters:

individual_summaries (str) – One of the values “separate”, “consolidated”, or “none”.

Returns:

Complete text summary.

Return type:

str

Notes: The options are:
  • “none”: Just has “Dataset” key.

  • “consolidated” Has “Dataset” and “Individual files” keys with the values of each is a string.

  • “separate” Has “Dataset” and “Individual files” keys. The values of “Individual files” is a dict.

DefinitionSummary.get_text_summary_details(include_individual=True)

Return a text summary of the information represented by this summary.

Parameters:

include_individual (bool) – If True (the default), individual summaries are in “Individual files”.

DefinitionSummary.merge_all_info()[source]

Create an Object containing the definition summary.

Returns:

Object - the overall summary object for type_defs.

DefinitionSummary.save(save_dir, file_formats=['.txt'], individual_summaries='separate', task_name='')

Save the summaries using the format indicated.

Parameters:
  • save_dir (str) – Name of the directory to save the summaries in.

  • file_formats (list) – List of file formats to use for saving.

  • individual_summaries (str) – Save one file or multiple files based on setting.

  • task_name (str) – If this summary corresponds to files from a task, the task_name is used in filename.

DefinitionSummary.save_visualizations(save_dir, file_formats=['.svg'], individual_summaries='separate', task_name='')

Save summary visualizations, if any, using the format indicated.

Parameters:
  • save_dir (str) – Name of the directory to save the summaries in.

  • file_formats (list) – List of file formats to use for saving.

  • individual_summaries (str) – Save one file or multiple files based on setting.

  • task_name (str) – If this summary corresponds to files from a task, the task_name is used in filename.

DefinitionSummary.update_summary(new_info)[source]

Update the summary for a given tabular input file.

Parameters:

new_info (dict) – A dictionary with the parameters needed to update a summary.

Notes

  • The summary needs a “name” str, a “schema” and a “Sidecar”.

DefinitionSummary.DISPLAY_INDENT = '   '
DefinitionSummary.INDIVIDUAL_SUMMARIES_PATH = 'individual_summaries'