예제 #1
0
        public CpDeviceRecognisedLinn(CpDevice aDevice, RecogniserHandler aRecognised)
            : base(aDevice)
        {
            try
            {
                iLock = new object();

                iRecognised = aRecognised;

                iInAppConfig     = false;
                iPresentationUri = string.Empty;

                iProductService = new CpProxyAvOpenhomeOrgProduct1(aDevice);
                iProductService.SetPropertyInitialEvent(InitialEvent);
                iProductService.SetPropertyProductRoomChanged(ProductRoomChanged);
                iProductService.SetPropertyProductNameChanged(ProductNameChanged);
                iProductService.SetPropertyModelNameChanged(ModelNameChanged);
                iProductService.SetPropertyProductImageUriChanged(ProductImageUriChanged);
                iProductService.SetPropertyAttributesChanged(ProductAttributesChanged);
                iProductService.Subscribe();
            }
            catch
            {
                aDevice.RemoveRef();
                throw;
            }
        }
예제 #2
0
        public CpDeviceDiagnostics(CpDevice aDevice, DiagnosticsHandler aHandler)
        {
            try
            {
                iDevice = aDevice;
                aDevice.AddRef();

                iHandler = aHandler;

                iLock      = new object();
                iResponses = 0;

                iDiagnosticsService = new CpProxyLinnCoUkDiagnostics1(aDevice);
                iDiagnosticsService.BeginCrashDataStatus(HandleCrashDataStatus);
                iDiagnosticsService.BeginElfFingerprint(HandleElfFingerprint);
                // remove checking of RS232 connections
                //iDiagnosticsService.BeginDiagnosticTest("help", string.Empty, HandleHelp);

                iProductService = new CpProxyAvOpenhomeOrgProduct1(aDevice);
                iProductService.SetPropertyInitialEvent(InitialEvent);
                iProductService.SetPropertyProductRoomChanged(ProductRoomChanged);
                iProductService.SetPropertyProductNameChanged(ProductNameChanged);
                iProductService.SetPropertyProductImageUriChanged(ProductImageUriChanged);
                iProductService.SetPropertyModelNameChanged(ModelNameChanged);
                iProductService.Subscribe();
            }
            catch
            {
                aDevice.RemoveRef();
                throw;
            }
        }
예제 #3
0
        public CpDeviceMain(CpDevice aDevice, DeviceVolkanoHandler aHandler)
            : base(aDevice, aHandler)
        {
            try
            {
                iLock = new object();

                iProductService = new CpProxyAvOpenhomeOrgProduct1(aDevice);
                iProductService.SetPropertyInitialEvent(InitialEvent);
                iProductService.SetPropertyProductRoomChanged(ProductRoomChanged);
                iProductService.SetPropertyProductNameChanged(ProductNameChanged);
                iProductService.SetPropertyProductImageUriChanged(ProductImageUriChanged);
                iProductService.Subscribe();
            }
            catch
            {
                aDevice.RemoveRef();
            }
        }