Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The reason that LSC is an abstract class is that there are a variety of stage controller devices available. On the one hand, these stage controllers all share some common elements: for example, all have a notion of the stage position. On the other hand, different stage controllers differ in the details: they have different programming interfaces, represent data in different formats, and so on. It would not be possible to create a single class that controls an arbitrary stage controller. By making LSC abstract, it can contain the elements common to all stage controllers, while " leaving blank" out device-specific details. Creating a subclass of LSC fills in those details for a particular type of device.

...