Example #1
0
        protected override void DecodeSections()
        {
            RawRead = true; // besser geht es noch nicht

            if (Locked != 0)
            {
                RawRead = true;
                return;
            }

            // Datenblöcke "interpretieren"
            int filesectiontype;

            filesectiontype = (int)InternalFileSections.Mdr1;
            if (Filesections.GetLength(filesectiontype) > 0)
            {
                DataBlockWithRecordsize bl = new DataBlockWithRecordsize(Filesections.GetPosition(filesectiontype));
                bl.Offset = 0;
                //Decode_Mdr1(Filesections.GetSectionDataReader(filesectiontype), bl);
                //Filesections.RemoveSection(filesectiontype);
            }

            // usw.

            filesectiontype = (int)InternalFileSections.Mdr10;
            if (Filesections.GetLength(filesectiontype) > 0)
            {
                //Decode_Mdr10(Filesections.GetSectionDataReader(filesectiontype), new DataBlock(0, Filesections.GetLength(filesectiontype)));
                //Filesections.RemoveSection(filesectiontype);
            }

            // usw.
        }
Example #2
0
        protected override void DecodeSections()
        {
            // Datenblöcke "interpretieren"
            int filesectiontype;

            filesectiontype = (int)InternalFileSections.NT_PointDatabtable;
            if (Filesections.GetLength(filesectiontype) > 0)
            {
                //Decode_NT_PointDatabtable(Filesections.GetSectionDataReader(filesectiontype), new DataBlock(0, Filesections.GetLength(filesectiontype)));
                //Filesections.RemoveSection(filesectiontype);
            }
            // usw.
        }
Example #3
0
        protected override void DecodeSections()
        {
            // Datenblöcke "interpretieren"
            int filesectiontype;

            filesectiontype = (int)InternalFileSections.DescriptionBlock;
            if (Filesections.GetLength(filesectiontype) > 0)
            {
                Decode_DescriptionBlock(Filesections.GetSectionDataReader(filesectiontype), new DataBlock(0, Filesections.GetLength(filesectiontype)));
            }

            filesectiontype = (int)InternalFileSections.CharacterLookupTableBlock;
            if (Filesections.GetLength(filesectiontype) > 0)
            {
                Decode_CharacterLookupTableBlock(Filesections.GetSectionDataReader(filesectiontype), new DataBlock(0, Filesections.GetLength(filesectiontype)));
            }
        }
Example #4
0
        protected override void ReadSections(BinaryReaderWriter br)
        {
            // --------- Dateiabschnitte für die Rohdaten bilden ---------
            Filesections.AddSection((int)InternalFileSections.ContentsBlock, new DataBlock(ContentsBlock));

            // GapOffset und DataOffset setzen
            SetSpecialOffsetsFromSections((int)InternalFileSections.PostHeaderData);

            if (GapOffset > HeaderOffset + Headerlength) // nur möglich, wenn extern z.B. auf den nächsten Header gesetzt
            {
                PostHeaderDataBlock = new DataBlock(HeaderOffset + Headerlength, GapOffset - (HeaderOffset + Headerlength));
                Filesections.AddSection((int)InternalFileSections.PostHeaderData, PostHeaderDataBlock);
            }

            // Datenblöcke einlesen
            Filesections.ReadSections(br);

            // Pos. der anderen beiden Datenblöcke ermitteln ...
            Decode_ContentsBlock(Filesections.GetSectionDataReader((int)InternalFileSections.ContentsBlock), new DataBlock(0, Filesections.GetLength((int)InternalFileSections.ContentsBlock)));
            // ... und einlesen
            Filesections.Read((int)InternalFileSections.DescriptionBlock, br);
            Filesections.Read((int)InternalFileSections.CharacterLookupTableBlock, br);
        }