| summaryrefslogtreecommitdiff |
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-07-17 10:13:31 +0200 |
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-07-17 10:13:31 +0200 |
| commit | 3e019d57fab57afe7aad373385f32a23bd178941 (patch) | |
| tree | c11e3440e4f199c8da54e649f01f9598df87e46b /instr-scripts/waveform_manager.py | |
Initial commit.
Diffstat (limited to 'instr-scripts/waveform_manager.py')
| -rw-r--r-- | instr-scripts/waveform_manager.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/instr-scripts/waveform_manager.py b/instr-scripts/waveform_manager.py new file mode 100644 index 0000000..e73ca2b --- /dev/null +++ b/instr-scripts/waveform_manager.py @@ -0,0 +1,34 @@ +class Waveform_Manager: + def __init__ (self, output_file, id_manager): + self.output = output_file + self.from_source = dict() + self.to_source = dict() + self.id_manager = id_manager + + def generate_new_waveform (self, source_id): + result = self.id_manager.generate_new_pure_id() + self.from_source[source_id] = result + self.to_source[result] = source_id + + self.output.write( + "(map_waveform " + + result + + " " + + source_id + + ")\n" + ) + + return result + + def get_waveform_from_source (self, source_id): + result = self.from_source.get(source_id) + + if (result == None): + return self.generate_new_waveform(source_id) + else: + return result + + def get_source_of_waveform (self, wfm_id): + result = self.to_source.get(wfm_id) + + return result |


