*** empty log message ***
git-svn-id: https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk@1137 59561ff5-6e30-0410-9f3c-9617f08c8826
diff --git a/doc/asn1c-usage.lyx b/doc/asn1c-usage.lyx
index 9dbae7d..28b0619 100644
--- a/doc/asn1c-usage.lyx
+++ b/doc/asn1c-usage.lyx
@@ -71,7 +71,7 @@
\backslash
lhead{This document describes
\backslash
-href{http://lionet.info/asn1c}{asn1c-0.9.20}}
+href{http://lionet.info/asn1c}{asn1c-0.9.21}}
\layout Standard
\backslash
@@ -451,7 +451,7 @@
\begin_inset Tabular
-<lyxtabular version="3" rows="26" columns="2">
+<lyxtabular version="3" rows="29" columns="2">
<features islongtable="true">
<column alignment="left" valignment="top" leftline="true" width="0">
<column alignment="block" valignment="top" leftline="true" rightline="true" width="3in">
@@ -1008,6 +1008,76 @@
\series bold
\size small
+Codecs Generation Options
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\layout Standard
+
+
+\series bold
+\size small
+Description
+\end_inset
+</cell>
+</row>
+<row topline="true">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\layout Standard
+
+
+\size small
+-gen-PER
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\layout Standard
+
+
+\size small
+Generate Packed Encoding Rules (PER) support code.
+\end_inset
+</cell>
+</row>
+<row topline="true" bottomline="true">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\layout Standard
+
+
+\size small
+-pdu=
+\emph on
+auto
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\layout Standard
+
+
+\size small
+Generate PDU tables by discovering Protocol Data Units automatically.
+\end_inset
+</cell>
+</row>
+<row topline="true">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\layout Standard
+
+
+\series bold
+\size small
Output Options
\end_inset
</cell>
@@ -1155,7 +1225,7 @@
\emph default
BER decoder (Basic Encoding Rules).
This decoder would create and/or fill the target structure for you.
- Please refer to Section
+ See Section
\begin_inset LatexCommand \vref{sub:Decoding-BER}
\end_inset
@@ -1166,18 +1236,31 @@
der_encoder This is the generic DER encoder (Distinguished Encoding Rules).
This encoder will take the target structure and encode it into a series
of bytes.
- Please refer to Section
+ See Section
\begin_inset LatexCommand \vref{sub:Encoding-DER}
\end_inset
.
+ NOTE: DER encoding is a subset of BER.
+ Any BER decoder should be able to handle DER input.
+\layout Description
+
+xer_decoder This is the generic XER decoder.
+ It takes both BASIC-XER or CANONICAL-XER encodings and deserializes the
+ data into a local, machine-dependent representation.
+ See Section
+\begin_inset LatexCommand \vref{sub:Decoding-XER}
+
+\end_inset
+
+.
\layout Description
xer_encoder This is the XER encoder (XML Encoding Rules).
This encoder will take the target structure and represent it as an XML
(text) document using either BASIC-XER or CANONICAL-XER encoding rules.
- Please refer to Section
+ See Section
\begin_inset LatexCommand \vref{sub:Encoding-XER}
\end_inset
@@ -1185,20 +1268,17 @@
.
\layout Description
-xer_decoder This is the generic XER decoder.
- It takes both BASIC-XER or CANONICAL-XER encodings and deserializes the
- data into a local, machine-dependent representation.
- Please refer to Section
-\begin_inset LatexCommand \vref{sub:Decoding-XER}
+uper_decoder This is the Unaligned PER decoder.
+\layout Description
-\end_inset
-
-.
+uper_encoder This is the Unaligned Basic PER encoder.
+ This encoder will take the target structure and encode it into a series
+ of bytes.
\layout Description
check_constraints Check that the contents of the target structure are semantical
ly valid and constrained to appropriate implicit or explicit subtype constraints.
- Please refer to Section
+ See Section
\begin_inset LatexCommand \vref{sub:Validating-the-target}
\end_inset
@@ -1210,7 +1290,7 @@
into human readable form.
This form is not formal and cannot be converted back into the structure,
but it may turn out to be useful for debugging or quick-n-dirty printing.
- Please refer to Section
+ See Section
\begin_inset LatexCommand \vref{sub:Printing-the-target}
\end_inset
@@ -1219,7 +1299,7 @@
\layout Description
free_struct This is a generic disposal which frees the target structure.
- Please refer to Section
+ See Section
\begin_inset LatexCommand \vref{sub:Freeing-the-target}
\end_inset
@@ -1854,7 +1934,7 @@
Freeing the structure is slightly more complex than it may seem to.
When the ASN.1 structure is freed, all the members of the structure and
- their submembers etc etc are recursively freed too.
+ their submembers are recursively freed as well.
But it might not be feasible to free the structure itself.
Consider the following case:
\layout LyX-Code
@@ -1991,6 +2071,22 @@
\emph default
function with the target structure pointer set to 0 (NULL), the function
will do nothing.
+\layout Standard
+
+For the programmer's convenience, the following macros are available:
+\layout LyX-Code
+
+ASN_STRUCT_FREE(asn_DEF, ptr);
+\layout LyX-Code
+
+ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF, ptr);
+\layout Standard
+
+These macros bear the same semantics as the
+\emph on
+free_struct
+\emph default
+ function invocation, discussed above.
\layout Chapter
@@ -2012,7 +2108,7 @@
Encoder
\layout Standard
-This example will help you to create a simple BER and XER encoder of a
+This example will help you create a simple BER and XER encoder of a
\begin_inset Quotes sld
\end_inset