public MainPage() { AppInsights.Client.TrackPageView(nameof(MainPage)); if (LightningProvider.IsLightningEnabled) { LowLevelDevicesController.DefaultProvider = LightningProvider.GetAggregateProvider(); } this.InitializeComponent(); mDeviceClient = DeviceClient.Create(Globals.IOTHUB_URI, new DeviceAuthenticationWithRegistrySymmetricKey(GetUniqueDeviceId(), Globals.DEVICE_KEY), TransportType.Amqp); registerKeyEvents(); var hasGpio = GpioController.GetDefault() != null; if (hasGpio) { mWheels = new Wheels(); mObstacleSensors = new ObstacleSensors(); mObstacleSensors.ValueReadingChanged += MObstacleSensors_ValueReading; mPanTiltServo = new PanTiltServo(); } else { mWheels = new FakeWheels(); } mCamera = new WebSocketCamera(); mWheels.Init(); NetworkInformation.NetworkStatusChanged += NetworkInformation_NetworkStatusChanged; Task.Run(() => { receiveC2dAsync(); }); }
string GetPartsSet(IConfiguration configuration) { IEngine engine = configuration.GetEngine(); IWheels wheels = configuration.GetWheels(); ISuspension suspension = configuration.GetSuspension(); return($"engine capacity={engine.Capacity}, wheels diameter={wheels.Diameter}, suspension type={suspension.Type}"); }
protected Car(ICarPartsBuilder builder) { this._wheels = builder.CreateWheel(); this._body = builder.CreateBody(); this._engine = builder.CreateEngine(); }
public CarStandard(ILights lights, IWheels wheels) { Console.WriteLine("wheels: " + wheels.Size.ToString() + ", " + wheels.Tires); Console.WriteLine("lights: " + lights.Fog.ToString() + ", " + lights.Type); }