Example #1
0
        public void OnPatientEvent(object sender, Patient.PatientEventArgs e)
        {
            switch (e.EventType)
            {
            default: break;

            case Patient.PatientEventTypes.Vitals_Change:
                listTracings.ForEach(c => {
                    c.wfStrip.ClearFuture(App.Patient);
                    c.wfStrip.Add_Beat__Cardiac_Baseline(App.Patient);
                });
                break;

            case Patient.PatientEventTypes.Cardiac_Defibrillation:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Defibrillation(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_PacerSpike:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Pacemaker(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Baseline:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Baseline(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Atrial:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Atrial(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Ventricular:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Ventricular(App.Patient));
                break;
            }
        }
        public void OnPatientEvent(object sender, Patient.PatientEventArgs e)
        {
            switch (e.EventType)
            {
            default: break;

            case Patient.PatientEventTypes.Vitals_Change:
                listTracings.ForEach(c => {
                    c.wfStrip.ClearFuture(App.Patient);
                    c.wfStrip.Add_Beat__Cardiac_Baseline(App.Patient);
                });
                break;

            case Patient.PatientEventTypes.Cardiac_Defibrillation:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Defibrillation(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_PacerSpike:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Pacemaker(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Baseline:
                App.Patient.IABP_Active = Running && (Frequency_Iter % Frequency == 0) &&
                                          ((Trigger.Value == Triggering.Values.ECG && App.Patient.Cardiac_Rhythm.HasWaveform_Ventricular) ||
                                           (Trigger.Value == Triggering.Values.Pressure && App.Patient.Cardiac_Rhythm.HasPulse_Ventricular));
                App.Patient.IABP_Trigger = Trigger.Value.ToString();

                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Baseline(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Atrial:
                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Atrial(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Ventricular:
                if (Running)
                {
                    Frequency_Iter++;
                }

                listTracings.ForEach(c => c.wfStrip.Add_Beat__Cardiac_Ventricular(App.Patient));
                break;
            }
        }
Example #3
0
        private void FormUpdateFields(object sender, Patient.PatientEventArgs e)
        {
            if (e.EventType == Patient.PatientEventTypes.Vitals_Change)
            {
                numHR.Value    = e.Patient.HR;
                numSPO2.Value  = e.Patient.SPO2;
                numRR.Value    = e.Patient.RR;
                numETCO2.Value = e.Patient.ETCO2;
                numT.Value     = (decimal)e.Patient.T;
                numCVP.Value   = e.Patient.CVP;

                numNSBP.Value = e.Patient.NSBP;
                numNDBP.Value = e.Patient.NDBP;
                numASBP.Value = e.Patient.ASBP;
                numADBP.Value = e.Patient.ADBP;
                numPSP.Value  = e.Patient.PSP;
                numPDP.Value  = e.Patient.PDP;

                numICP.Value = e.Patient.ICP;
                numIAP.Value = e.Patient.IAP;

                comboCardiacRhythm.SelectedIndex = (int)e.Patient.Cardiac_Rhythm.Value;
                comboCardiacAxis.SelectedIndex   = (int)e.Patient.Cardiac_Axis.Value;

                comboRespiratoryRhythm.SelectedIndex = (int)e.Patient.Respiratory_Rhythm.Value;
                numInspiratoryRatio.Value            = (decimal)e.Patient.Respiratory_IERatio_I;
                numExpiratoryRatio.Value             = (decimal)e.Patient.Respiratory_IERatio_E;

                numPacemakerCaptureThreshold.Value = e.Patient.Pacemaker_Threshold;

                numSTE_I.Value   = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_I];
                numSTE_II.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_II];
                numSTE_III.Value = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_III];
                numSTE_aVR.Value = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_AVR];
                numSTE_aVL.Value = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_AVL];
                numSTE_aVF.Value = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_AVF];
                numSTE_V1.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_V1];
                numSTE_V2.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_V2];
                numSTE_V3.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_V3];
                numSTE_V4.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_V4];
                numSTE_V5.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_V5];
                numSTE_V6.Value  = (decimal)e.Patient.ST_Elevation [(int)Leads.Values.ECG_V6];

                numTWE_I.Value   = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_I];
                numTWE_II.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_II];
                numTWE_III.Value = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_III];
                numTWE_aVR.Value = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_AVR];
                numTWE_aVL.Value = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_AVL];
                numTWE_aVF.Value = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_AVF];
                numTWE_V1.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_V1];
                numTWE_V2.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_V2];
                numTWE_V3.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_V3];
                numTWE_V4.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_V4];
                numTWE_V5.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_V5];
                numTWE_V6.Value  = (decimal)e.Patient.T_Elevation [(int)Leads.Values.ECG_V6];

                numFHR.Value         = e.Patient.FHR;
                numUCFrequency.Value = e.Patient.UC_Frequency;
                numUCDuration.Value  = e.Patient.UC_Duration;
                comboFHRVariability.SelectedIndex = (int)e.Patient.FHR_Variability.Value;
                comboUCIntensity.SelectedIndex    = (int)e.Patient.UC_Intensity.Value;

                listFHRRhythms.SelectedItems.Clear();
                foreach (FetalHeartDecelerations.Values fhr_rhythm in e.Patient.FHR_Decelerations.ValueList)
                {
                    listFHRRhythms.SelectedItems.Add(listFHRRhythms.Items.GetItemAt((int)fhr_rhythm));
                }
            }
        }
        public void OnPatientEvent(object sender, Patient.PatientEventArgs e)
        {
            switch (e.EventType)
            {
            default: break;

            case Patient.PatientEventTypes.Vitals_Change:
                listTracings.ForEach(c => {
                    c.Strip.ClearFuture(App.Patient);
                    c.Strip.Add_Beat__Cardiac_Baseline(App.Patient);
                });

                listNumerics.ForEach(n => n.UpdateVitals());
                break;

            case Patient.PatientEventTypes.Defibrillation:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Defibrillation(App.Patient));
                break;

            case Patient.PatientEventTypes.Pacermaker_Spike:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Pacemaker(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Baseline:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Baseline(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Atrial_Electric:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Atrial_Electrical(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Ventricular_Electric:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Ventricular_Electrical(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Atrial_Mechanical:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Atrial_Mechanical(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Ventricular_Mechanical:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Ventricular_Mechanical(App.Patient));

                /* Iterations and trigger for auto-scaling pressure waveform strips */
                autoScale_iter -= 1;
                if (autoScale_iter <= 0)
                {
                    for (int i = 0; i < listTracings.Count; i++)
                    {
                        listTracings [i].Strip.SetAutoScale(App.Patient);
                        listTracings [i].UpdateScale();
                    }

                    autoScale_iter = Strip.DefaultAutoScale_Iterations;
                }
                break;

            case Patient.PatientEventTypes.Respiratory_Baseline:
                listTracings.ForEach(c => c.Strip.Add_Breath__Respiratory_Baseline(App.Patient));
                break;

            case Patient.PatientEventTypes.Respiratory_Inspiration:
                listTracings.ForEach(c => c.Strip.Add_Breath__Respiratory_Inspiration(App.Patient));
                break;

            case Patient.PatientEventTypes.Respiratory_Expiration:
                listTracings.ForEach(c => c.Strip.Add_Breath__Respiratory_Expiration(App.Patient));
                break;
            }
        }
Example #5
0
        public void OnPatientEvent(object sender, Patient.PatientEventArgs e)
        {
            switch (e.EventType)
            {
            default: break;

            case Patient.PatientEventTypes.Vitals_Change:
                listTracings.ForEach(c => {
                    c.Strip.ClearFuture(App.Patient);
                    c.Strip.Add_Beat__Cardiac_Baseline(App.Patient);
                });
                break;

            case Patient.PatientEventTypes.Defibrillation:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Defibrillation(App.Patient));
                break;

            case Patient.PatientEventTypes.Pacermaker_Spike:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Pacemaker(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Baseline:
                App.Patient.IABP_Active = Running && (Frequency_Iter % Frequency == 0) &&
                                          ((Trigger.Value == Triggering.Values.ECG && App.Patient.Cardiac_Rhythm.HasWaveform_Ventricular) ||
                                           (Trigger.Value == Triggering.Values.Pressure && App.Patient.Cardiac_Rhythm.HasPulse_Ventricular));
                App.Patient.IABP_Trigger = Trigger.Value.ToString();

                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Baseline(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Atrial_Electric:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Atrial_Electrical(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Ventricular_Electric:
                if (Running)
                {
                    Frequency_Iter++;
                }

                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Ventricular_Electrical(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Atrial_Mechanical:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Atrial_Mechanical(App.Patient));
                break;

            case Patient.PatientEventTypes.Cardiac_Ventricular_Mechanical:
                listTracings.ForEach(c => c.Strip.Add_Beat__Cardiac_Ventricular_Mechanical(App.Patient));

                /* Iterations and trigger for auto-scaling pressure waveform strips */
                autoScale_iter -= 1;
                if (autoScale_iter <= 0)
                {
                    for (int i = 0; i < listTracings.Count; i++)
                    {
                        listTracings [i].Strip.SetAutoScale(App.Patient);
                        listTracings [i].UpdateScale();
                    }

                    autoScale_iter = Strip.DefaultAutoScale_Iterations;
                }
                break;

            case Patient.PatientEventTypes.IABP_Balloon_Inflation:
                listTracings.ForEach(c => c.Strip.Add_Beat__IABP_Balloon(App.Patient));
                break;
            }
        }