design for services interacting with the simulator
I'm working on a service that exposes the Motor contract on a joint with a single degree of rotational freedom.
I am using SimulatedDifferentialDriveService as a model. I kind of expected to see SimulatedDifferentialDriveService have Microsoft.Robotics.Simulation.Engine.Proxy as a partner service. That would prevent a SimulatedDifferentialDriveService from being created without a simulation engine.
Is there a reason I should not include the engine proxy as a partner in my simulated motor service?
there is no reason not to include it. Some of our services expect the engine to be started in the manifest, so they dont include it as a partner anymore. If its in the manifest, AND you include it as a partner, its ok, as long as you specify UseExistingOrCreate for the partner policy.
Some of our other sim services still do include it as a partner i believe...