taucmdr.model.project module

Project data model.

A project collects multiple Target, Application, and Measurement configurations in a single container. Selecting one of each forms a new Experiment. Each application of the Experiment generates a new Trial record along with some performance data (profiles, traces, etc.).

class taucmdr.model.project.Project(record)[source]

Bases: taucmdr.mvc.model.Model

Project data controller.

associations = {'applications': (<class 'taucmdr.model.application.Application'>, 'projects'), 'targets': (<class 'taucmdr.model.target.Target'>, 'projects'), 'measurements': (<class 'taucmdr.model.measurement.Measurement'>, 'projects'), 'experiments': (<class 'taucmdr.model.experiment.Experiment'>, 'project')}
attributes = {'name': {'primary_key': True, 'type': 'string', 'unique': True, 'description': 'project name'}, 'targets': {'collection': <class 'taucmdr.model.target.Target'>, 'via': 'projects', 'description': 'targets used by this project'}, 'applications': {'collection': <class 'taucmdr.model.application.Application'>, 'via': 'projects', 'description': 'applications used by this project'}, 'measurements': {'collection': <class 'taucmdr.model.measurement.Measurement'>, 'via': 'projects', 'description': 'measurements used by this project'}, 'experiments': {'collection': <class 'taucmdr.model.experiment.Experiment'>, 'via': 'project', 'description': 'experiments formed from this project'}, 'experiment': {'model': <class 'taucmdr.model.experiment.Experiment'>, 'description': 'the current experiment'}, 'init_options': {'type': 'string', 'description': 'options passed to initialize command'}}
classmethod controller(storage=<taucmdr.cf.storage.storage_dispatch.ProjectStorageDispatch object>)[source]
experiment()[source]

Gets the currently selected experiment configuration.

Returns:The current experiment
Return type:Experiment
Raises:ExperimentSelectionError – No experiment currently selected.
key_attribute = 'name'
name = 'Project'
on_update(changes)[source]
prefix
references = {(<class 'taucmdr.model.experiment.Experiment'>, 'project')}
classmethod selected(storage=<taucmdr.cf.storage.storage_dispatch.ProjectStorageDispatch object>)[source]
class taucmdr.model.project.ProjectController(model_cls, storage, context=None)[source]

Bases: taucmdr.mvc.controller.Controller

Project data controller.

create(data)[source]
delete(keys)[source]
select(project, experiment=None)[source]
selected()[source]
unselect()[source]
taucmdr.model.project.attributes()[source]