コード例 #1
0
        public void ECG_Ventricular(Patient p, Rhythm.Strip s)
        {
            // Handle aberrant beats (may be triggered by pacemaker...)
            if (p.Cardiac_Rhythm.AberrantBeat)
            {
                switch (Value)
                {
                default: return;

                case Values.Asystole:
                case Values.Atrial_Flutter:
                case Values.Atrial_Fibrillation:
                case Values.AV_Block__1st_Degree:
                case Values.AV_Block__Wenckebach:
                case Values.AV_Block__Mobitz_II:
                case Values.AV_Block__3rd_Degree:
                case Values.Bundle_Branch_Block:
                case Values.Idioventricular:
                case Values.Junctional:
                case Values.Pulseless_Electrical_Activity:
                case Values.Sick_Sinus_Syndrome:
                case Values.Sinus_Arrhythmia:
                case Values.Sinus_Rhythm:
                case Values.Sinus_Rhythm_with_Arrest:
                case Values.Sinus_Rhythm_with_Bigeminy:
                case Values.Sinus_Rhythm_with_Trigeminy:
                case Values.Sinus_Rhythm_with_PACs:
                case Values.Sinus_Rhythm_with_PJCs:
                case Values.Sinus_Rhythm_with_PVCs_Unifocal:
                case Values.Supraventricular_Tachycardia:
                case Values.Ventricular_Standstill:
                case Values.Ventricular_Tachycardia_Monomorphic_Pulsed:
                case Values.Ventricular_Tachycardia_Monomorphic_Pulseless:
                    s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Aberrant_3(p, s.Lead));
                    return;

                case Values.Sinus_Rhythm_with_PVCs_Multifocal:
                    switch (new Random().Next(0, 3))
                    {
                    default:
                    case 0: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Aberrant_1(p, s.Lead)); break;

                    case 1: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Aberrant_2(p, s.Lead)); break;

                    case 2: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Aberrant_3(p, s.Lead)); break;
                    }
                    return;
                }
            }

            // Handle non-aberrant beats
            switch (Value)
            {
            default: return;

            case Values.Asystole: return;

            case Values.Atrial_Flutter: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Atrial_Fibrillation: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.AV_Block__1st_Degree: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.AV_Block__Wenckebach: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.AV_Block__Mobitz_II: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.AV_Block__3rd_Degree: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Aberrant_1(p, s.Lead)); return;

            case Values.Bundle_Branch_Block: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_BBB(p, s.Lead)); return;

            case Values.Idioventricular: s.Overwrite(Rhythm.Waveforms.ECG_Complex__Idioventricular(p, s.Lead)); return;

            case Values.Junctional: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Pulseless_Electrical_Activity: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sick_Sinus_Syndrome: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Arrhythmia: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_Arrest: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_Bigeminy: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_Trigeminy: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PACs: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PJCs: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PVCs_Multifocal: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PVCs_Unifocal: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_Normal(p, s.Lead)); return;

            case Values.Supraventricular_Tachycardia: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_SVT(p, s.Lead)); return;

            case Values.Ventricular_Fibrillation_Coarse: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_VF(p, s.Lead, 0.7f)); return;

            case Values.Ventricular_Fibrillation_Fine: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_VF(p, s.Lead, 0.1f)); return;

            case Values.Ventricular_Standstill: return;

            case Values.Ventricular_Tachycardia_Monomorphic_Pulsed: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_VT(p, s.Lead)); return;

            case Values.Ventricular_Tachycardia_Monomorphic_Pulseless: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_VT(p, s.Lead)); return;

            case Values.Ventricular_Tachycardia_Polymorphic: s.Overwrite(Rhythm.Waveforms.ECG_Complex__QRST_VF(p, s.Lead, 1f)); return;
            }
        }
コード例 #2
0
        public void ECG_Atrial(Patient p, Rhythm.Strip s)
        {
            switch (Value)
            {
            case Values.Asystole: return;

            case Values.Atrial_Fibrillation: return;

            case Values.Atrial_Flutter: return;

            case Values.AV_Block__1st_Degree: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.AV_Block__Wenckebach: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.AV_Block__Mobitz_II: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.AV_Block__3rd_Degree: s.Underwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Bundle_Branch_Block: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Idioventricular: return;

            case Values.Junctional: return;

            case Values.Pulseless_Electrical_Activity:
            case Values.Sick_Sinus_Syndrome: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Arrhythmia: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_Arrest: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_Bigeminy: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_Trigeminy: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PACs: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PJCs: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PVCs_Multifocal: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Sinus_Rhythm_with_PVCs_Unifocal: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Supraventricular_Tachycardia: return;

            case Values.Ventricular_Fibrillation_Coarse: return;

            case Values.Ventricular_Fibrillation_Fine: return;

            case Values.Ventricular_Standstill: s.Overwrite(Rhythm.Waveforms.ECG_Complex__P_Normal(p, s.Lead)); return;

            case Values.Ventricular_Tachycardia_Monomorphic_Pulsed: return;

            case Values.Ventricular_Tachycardia_Monomorphic_Pulseless: return;

            case Values.Ventricular_Tachycardia_Polymorphic: return;
            }
        }