Skip to content

refactor ISimulator #440

@interim17

Description

@interim17

What needs to happen? / Why should we do this?

There are a few old todos in the code related to the ISimulator interface and it is due for a refactor.

    // these should probably be abstracted to just "start"
    // and have a separate interface for initialization?
    // For example, "start" = initialize, and "resume" = play

Working on cache updates, particularly pre-fetching, highlighted how nice it would be to have those todos addressed and cleaned up.

The idea is to aim for a better separation of concerns, especially with code on the interface and in RemoteSimulator that does not pertain to other simulators, or really to any simulator. We can reduce boiler plate and noop methods and calls, as well as identify dead/unimplemented code and potential optimizations by making this all a little bit clearer.

The basic approach to the refactor will be to:

  • move away from using the language of remote/networked simulation in abstractions and implementations that are not in fact remote
  • move remote specific code either into RemoteSimulator or a new abstraction
  • remove unimplemented methods that pertain to live mode and pre-run sims (as this development is moving in a different implementation direction)
  • add documentation/comments

Related but out of scope: the todos (of a similar vintage) on the controller about streamlining the public API for initializing the controller with a simulator

Metadata

Metadata

Assignees

Labels

maintenanceCode cleanup/refactoring, test coverage, etc.

Type

No type

Projects

Status

✔ Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions