2.4.100 EndBlock

The EndBlock record specifies the end of a collection of records. Future records contained in this collection specify saved features to allow applications that do not support the feature to preserve the information. This record MUST have an associated StartBlock record. StartBlock and EndBlock pairs can be nested. Up to 100 levels of blocks can be nested.

EndBlock records MUST be written according to the following rules:

  • If there exists a StartBlock record with iObjectKind equal to 0x0000 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current Axis Group.

  • If there exists a StartBlock record with iObjectKind equal to 0x0002 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current AttachedLabel.

  • If there exists a StartBlock record with iObjectKind equal to 0x0004 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current Axis.

  • If there exists a StartBlock record with iObjectKind equal to 0x0005 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current chart group.

  • If there exists a StartBlock record with iObjectKind equal to 0x0006 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the sequence of records containing the StartBlock and conforming to the DAT rule.

  • If there exists a StartBlock record with iObjectKind equal to 0x0007 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the sequence of records containing the StartBlock and conforming to the FRAME rule.

  • If there exists a StartBlock record with iObjectKind equal to 0x0009 without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current Legend.

  • If there exists a StartBlock record with iObjectKind equal to 0x000A without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current Begin and End collection that exists immediately after LegendException in the sequence of records conforming to the SERIESFORMAT rule.

  • If there exists a StartBlock record with iObjectKind equal to 0x000C without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current Series.

  • If there exists a StartBlock record with iObjectKind equal to 0x000D without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current Sheet.

  • If there exists a StartBlock record with iObjectKind equal to 0x000E without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the current SS production.

  • If there exists a StartBlock record with iObjectKind equal to 0x000F without a matching EndBlock, then a matching EndBlock record MUST exist immediately before the End record of the sequence of records containing the StartBlock and conforming to the DROPBAR rule.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

frtHeaderOld

iObjectKind

unused1 (optional)

unused2 (optional)

unused3 (optional)

frtHeaderOld (4 bytes):  An FrtHeaderOld structure. The frtHeaderOld.rt field MUST be 0x0853.

iObjectKind (2 bytes):  An unsigned integer that specifies the type of object that is encompassed by the block. MUST equal the iObjectKind field of the associated StartBlock record. MUST be a value from the following table:

Value

Object Type

0x0000

Axis Group

0x0002

AttachedLabel

0x0004

Axis

0x0005

chart group

0x0006

Dat

0x0007

Frame

0x0009

Legend

0x000A

LegendException

0x000C

Series

0x000D

Sheet

0x000E

DataFormat

0x000F

DropBar

unused1 (2 bytes): Undefined and MUST be ignored.

unused2 (2 bytes): Undefined and MUST be ignored.

unused3 (2 bytes): Undefined and MUST be ignored.