Example #1
0
        /// <summary>
        /// Sample : Getting scale status.
        /// </summary>
        public static Communication.PeripheralStatus GetScaleStatus(IPort port)
        {
            // Create IPeripheralConnectParser object.
            IPeripheralConnectParser parser = StarIoExt.CreateScaleConnectParser(ScaleModel.APS10);

            // Usage of parser sample is "Communication.ParseDoNotCheckCondition(IPeripheralCommandParser parser, IPort port)".
            Communication.CommunicationResult result = Communication.ParseDoNotCheckCondition(parser, port);

            // Check peripheral status.
            Communication.PeripheralStatus status = Communication.PeripheralStatus.Invalid;
            if (result == Communication.CommunicationResult.Success)
            {
                // Check parser property value.
                if (parser.IsConnected) // connect
                {
                    status = Communication.PeripheralStatus.Connect;
                }
                else // disconnect
                {
                    status = Communication.PeripheralStatus.Disconnect;
                }
            }
            else // communication error
            {
                status = Communication.PeripheralStatus.Impossible;
            }

            return(status);
        }
Example #2
0
        /// <summary>
        /// Sample : Checking barcode reader status.
        /// </summary>
        private void CheckBarcodeReaderStatus()
        {
            // Create IPeripheralConnectParser object.
            IPeripheralConnectParser parser = StarIoExt.CreateBcrConnectParser(BcrModel.POP1);

            // Usage of parser sample is "Communication.ParseDoNotCheckCondition(IPeripheralCommandParser parser, IPort port)".
            Communication.CommunicationResult result = Communication.ParseDoNotCheckCondition(parser, port);

            // Check peripheral status.
            currentBarcodeReaderStatus = Communication.PeripheralStatus.Invalid;
            if (result == Communication.CommunicationResult.Success)
            {
                // Check parser property value.
                if (parser.IsConnected) // connect
                {
                    currentBarcodeReaderStatus = Communication.PeripheralStatus.Connect;
                }
                else // disconnect
                {
                    currentBarcodeReaderStatus = Communication.PeripheralStatus.Disconnect;
                }
            }
            else // communication error
            {
                currentBarcodeReaderStatus = Communication.PeripheralStatus.Impossible;
            }

            switch (currentBarcodeReaderStatus)
            {
            default:
            case Communication.PeripheralStatus.Impossible:
                OnPrinterImpossible();
                break;

            case Communication.PeripheralStatus.Connect:
                OnBarcodeReaderConnect();
                break;

            case Communication.PeripheralStatus.Disconnect:
                OnBarcodeReaderDisconnect();
                break;
            }
        }
        public static void CheckBarcodeReaderStatus(IPort port)
        {
            // Create IPeripheralConnectParser object.
            IPeripheralConnectParser parser = StarIoExt.CreateBcrConnectParser(BcrModel.POP1);

            // Usage of parser sample is "Communication.ParseDoNotCheckCondition(IPeripheralCommandParser parser, IPort port)".
            CommunicationResult result = Communication.ParseDoNotCheckCondition(parser, port);

            // Check peripheral status.
            barcodeReaderStatus = PeripheralStatus.Invalid;
            if (result.Result == Result.Success)
            {
                // Check parser property value.
                if (parser.IsConnected) // connect
                {
                    barcodeReaderStatus = PeripheralStatus.Connect;
                }
                else // disconnect
                {
                    barcodeReaderStatus = PeripheralStatus.Disconnect;
                }
            }
            else // communication error
            {
                barcodeReaderStatus = PeripheralStatus.Impossible;
            }

            //switch (barcodeReaderStatus)
            //{
            //    default:
            //    case PeripheralStatus.Impossible:
            //        OnBarcodeReaderImpossible();
            //        break;

            //    case PeripheralStatus.Connect:
            //        OnBarcodeReaderConnect();
            //        break;

            //    case PeripheralStatus.Disconnect:
            //        OnBarcodeReaderDisconnect();
            //        break;
            //}
        }
        public static string MonitoringBarcodeReader(IPort port)
        {
            var result = string.Empty;

            // Create IPeripheralConnectParser object.
            IPeripheralConnectParser parser = StarIoExt.CreateBcrConnectParser(BcrModel.POP1);

            // Usage of parser sample is "Communication.ParseDoNotCheckCondition(IPeripheralCommandParser parser, IPort port)".
            CommunicationResult comResult = Communication.ParseDoNotCheckCondition(parser, port);

            CheckBarcodeReaderStatus(port);

            //Console.WriteLine(barcodeReaderStatus);

            if (barcodeReaderStatus == PeripheralStatus.Connect) // Barcode reader is connected.
            {
                result = ReadBarcodeReaderData(port);            // Read barcode reader data.
            }
            return(result);
        }
Example #5
0
        private void PlaySoundData()
        {
            // Your printer PortName and PortSettings.
            string portName     = SharedInformationManager.SelectedPortName;
            string portSettings = SharedInformationManager.SelectedPortSettings;

            // Your speaker model.
            MelodySpeakerModel speakerModel = SharedInformationManager.SelectedSpeakerModel;

            // Check MCS10 connection status.
            if (speakerModel == MelodySpeakerModel.MCS10)
            {
                IPeripheralConnectParser parser = StarIoExt.CreateMelodySpeakerConnectParser(speakerModel);

                CommunicationResult parseResult = Communication.ParseDoNotCheckCondition(parser, portName, portSettings, 30000);

                if (parseResult.Result == Communication.Result.Success)
                {
                    if (!parser.IsConnected)
                    {
                        Dispatcher.Invoke((Action)(() =>
                        {
                            MessageBox.Show("MelodySpeaker Disconnect.", "Check Status");
                        }));
                        return;
                    }
                }
                else
                {
                    Dispatcher.Invoke((Action)(() =>
                    {
                        MessageBox.Show("Printer Impossible", "Failure");
                    }));
                    return;
                }
            }

            // Specify sound file path.
            string filePath = "";

            Dispatcher.Invoke((Action)(() =>
            {
                filePath = filePathTextBox.Text;
            }));

            // Set volume setting.
            bool specifyVolume = false;
            int  volume        = 0;

            if (speakerModel != MelodySpeakerModel.FVP10) // FVP10 not supported volume setting.
            {
                Dispatcher.Invoke((Action)(() =>
                {
                    switch (volumeTypeReceivedComboBox.SelectedIndex)
                    {
                    default:
                    case 0:     // Default
                                // Not specify volume
                        break;

                    case 1:     // Off
                        specifyVolume = true;
                        volume = SoundSetting.VolumeOff;
                        break;

                    case 2:     // Min
                        specifyVolume = true;
                        volume = SoundSetting.VolumeMin;
                        break;

                    case 3:     // Max
                        specifyVolume = true;
                        volume = SoundSetting.VolumeMax;
                        break;

                    case 4:     // Manual
                        specifyVolume = true;
                        volume = (int)volumeReceivedSlider.Value;;
                        break;
                    }
                }));
            }

            // Create melody speaker commands.
            byte[] commands = null;
            try
            {
                commands = MelodySpeakerFunctions.CreatePlayingSoundData(speakerModel, filePath, specifyVolume, volume);
            }
            catch (FormatException ex) // Unsupported sound format.
            {
                Dispatcher.Invoke((Action)(() =>
                {
                    MessageBox.Show(ex.GetType().Name + "\n" + ex.Message, "Error");
                }));
                return;
            }
            catch (ArgumentOutOfRangeException ex) // Specified parameter is out of range.
            {
                Dispatcher.Invoke((Action)(() =>
                {
                    MessageBox.Show(ex.GetType().Name + "\n" + ex.Message, "Error");
                }));
                return;
            }
            catch (ArgumentException ex) // Not allowed operation. (Ex. Specify not supported parameter)
            {
                Dispatcher.Invoke((Action)(() =>
                {
                    MessageBox.Show(ex.GetType().Name + "\n" + ex.Message, "Error");
                }));
                return;
            }
            catch (InvalidOperationException ex) // Not allowed operation. (Ex. Unsupported model is specified.)
            {
                Dispatcher.Invoke((Action)(() =>
                {
                    MessageBox.Show(ex.GetType().Name + "\n" + ex.Message, "Error");
                }));
                return;
            }
            catch (Exception ex) // Other error.
            {
                Dispatcher.Invoke((Action)(() =>
                {
                    MessageBox.Show(ex.GetType().Name + "\n" + ex.Message, "Error");
                }));
                return;
            }

            // Send melody speaker commands.
            CommunicationResult sendCommandsResult = Communication.SendCommands(commands, portName, portSettings, 30000);

            Dispatcher.Invoke((Action)(() =>
            {
                MessageBox.Show(Communication.GetCommunicationResultMessage(sendCommandsResult), "Communication Result");
            }));
        }