예제 #1
0
        public CRTAggregate(RecordStream rs, ChartRecordAggregate container)
            : base(RuleName_CRT, container)
        {
            chartForamt = (ChartFormatRecord)rs.GetNext();
            rs.GetNext();

            chartTypeRecord = rs.GetNext();
            if (rs.PeekNextChartSid() == BopPopCustomRecord.sid)
            {
                bopPopCustom = (BopPopCustomRecord)rs.GetNext();
            }
            crtLink = (CrtLinkRecord)rs.GetNext();
            if (rs.PeekNextChartSid() == SeriesListRecord.sid)
            {
                seriesList = (SeriesListRecord)rs.GetNext();
            }
            if (rs.PeekNextChartSid() == Chart3dRecord.sid)
            {
                chart3d = (Chart3dRecord)rs.GetNext();
            }
            if (rs.PeekNextChartSid() == LegendRecord.sid)
            {
                ld = new LDAggregate(rs, this);
            }
            if (rs.PeekNextChartSid() == DropBarRecord.sid)
            {
                dropBar1 = new DropBarAggregate(rs, this);
                dropBar2 = new DropBarAggregate(rs, this);
            }

            while (rs.PeekNextChartSid() == CrtLineRecord.sid)
            {
                dicLines.Add((CrtLineRecord)rs.GetNext(), (LineFormatRecord)rs.GetNext());
            }
            if (rs.PeekNextChartSid() == DataLabExtRecord.sid || rs.PeekNextChartSid() == DefaultTextRecord.sid)
            {
                dft1 = new DFTTextAggregate(rs, this);
                if (rs.PeekNextChartSid() == DataLabExtRecord.sid || rs.PeekNextChartSid() == DefaultTextRecord.sid)
                {
                    dft2 = new DFTTextAggregate(rs, this);
                }
            }
            if (rs.PeekNextChartSid() == DataLabExtContentsRecord.sid)
            {
                dataLabExtContents = (DataLabExtContentsRecord)rs.GetNext();
            }

            if (rs.PeekNextChartSid() == DataFormatRecord.sid)
            {
                ss = new SSAggregate(rs, this);
            }
            while (rs.PeekNextChartSid() == ShapePropsStreamRecord.sid)
            {
                shapeList.Add(new ShapePropsAggregate(rs, this));
            }

            rs.GetNext();
        }
예제 #2
0
        public DatAggregate(RecordStream rs, ChartRecordAggregate container)
            : base(RuleName_DAT, container)
        {
            dat = (DatRecord)rs.GetNext();
            rs.GetNext();
            ld = new LDAggregate(rs, this);

            Record r = rs.GetNext();//EndRecord

            Debug.Assert(r.GetType() == typeof(EndRecord));
        }