File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -76,3 +76,9 @@ \subsection{Attribute heap}
7676The attribute heap is a partition consisting entirely of \type {AttrIndex} values.
7777
7878\partition {heap.attr}
79+
80+ \subsection {String heap }
81+ \label {sec:ifc-string-heap }
82+
83+ The string heap is a partition consisting entirely of \type {TextOffset} values. Each entry in that
84+ heap designates a NUL-terminated UTF-8 encoded string (\secref {sec:ifc-textoffset-data-type }).
Original file line number Diff line number Diff line change @@ -11,4 +11,34 @@ \section{Producing Tool}
1111Each entry in that partition is a \type {TextOffset} representing a NUL-terminated UTF-8 encoded string (see \secref {sec:ifc-textoffset-data-type }).
1212The partition has as many entries as the tool deems necessary for identification purposes.
1313
14- \partition {meta.tool-maker}
14+ \partition {meta.tool.maker}
15+
16+ \section {Tool Invocation }
17+ \label {sec:ifc-tool-invocation }
18+
19+ A tool producing an IFC file may embed a partition describing the sequence of invocations of tools leading to the creating of that file.
20+ That partition is called the \emph {tool invocation } partition. Each entry in that partition is
21+ a structure of the layout
22+ %
23+ \begin {figure }[H]
24+ \centering
25+ \structure {
26+ \DeclareMember {cmd}{TextOffset} \\
27+ \DeclareMember {args}{Sequence TextOffset} \\
28+ }
29+ \caption {Structure of a tool invocation}
30+ \label {fig:ifc-tool-invocation }
31+ \end {figure }
32+ %
33+ with the following meaning:
34+ \begin {itemize }
35+ \item The \field {cmd} field describes the name of the invoked command
36+ \item The \field {args} field describes the sequence (\secref {sec:ifc-sequence }) of arguments to the
37+ invoked command. It is a slice of the string heap (\secref {sec:ifc-string-heap }), meaning that the field \field {args.start}
38+ designates an entry into the \emph {string heap } and \field {args.cardinality} designates how many
39+ \type {TextOffset} values there are in that sequence. Each element of that sequence designates a NUL-terminated UTF-8 string.
40+ \end {itemize }
41+
42+
43+ \partition {meta.tool.invocation}
44+
You can’t perform that action at this time.
0 commit comments