using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using lkfxdok.c;

namespace test.C
{
    public class LKFContextAnalyser
    {
        public readonly uint CountI11;
        public readonly uint CountI12;
        public readonly uint CountOther;
        public readonly uint AufenthaltCount;
        public readonly uint AufenthaltInt;

        public LKFContextAnalyser (LKFContextWithData context)
        {
            AufenthaltCount = context.AufenthaltCount;
            for (uint i = 0; i < AufenthaltCount; i++)
            {
                var aufenthalt = context.GetAufenthalt(i);
                var intensivCount = aufenthalt.IntensivCount;
                if (intensivCount > 0)
                {
                    AufenthaltInt++;
                    for (uint j = 0; j < intensivCount; j++)
                    {
                        var s = aufenthalt.GetIntLine(j);
                        var line = s.Line;
                        if (line.StartsWith("I11"))
                            CountI11++;
                        else if (line.StartsWith("I12"))
                            CountI12++;
                        else
                            CountOther++;
                    }
                }
            }
        }
    }
}
