idmtools.registry.experiment_specification module

ExperimentPluginSpecification provided definition for the experiment plugin specification, hooks, and plugin manager.

Copyright 2021, Bill & Melinda Gates Foundation. All rights reserved.

class idmtools.registry.experiment_specification.ExperimentPluginSpecification

Bases: PluginSpecification, ABC

ExperimentPluginSpecification defines the specification for Experiment plugins.

classmethod get_name(strip_all: bool = True) str

Get name of plugin. By default we remove the PlatformSpecification portion.

Parameters:
  • strip_all – When true, ExperimentPluginSpecification and ExperimentPluginSpec is stripped from name.

  • Stripped (When false only Specification and Spec is) –

Returns:

Name of plugin

get(configuration: dict) Experiment

Return a new model using the passed in configuration.

Parameters:

configuration – The INI configuration file to use.

Returns:

The new model.

get_type() Type[Experiment]

Get Experiment type.

Returns:

Experiment type.

class idmtools.registry.experiment_specification.ExperimentPlugins(strip_all: bool = True)

Bases: object

ExperimentPlugins acts as registry for Experiment plugins.

__init__(strip_all: bool = True) None

Initialize the Experiment Registry. When strip all is false, the full plugin name will be used for names in map.

Parameters:

strip_all – Whether to strip common parts of name from plugins in plugin map

get_plugins() Set[ExperimentPluginSpecification]

Get plugins.

Returns:

Experiment plugins.

get_plugin_map() Dict[str, ExperimentPluginSpecification]

Get experiment plugin map.

Returns:

Experiment plugin map.