ASNSDK TCE-C
Version 5.0 enhancements
The release TCE-C v5.0 is compliant to the latest ASN.1 standard 2008. The code-generation technology now supports constraint checking using generated code, huge integers and a decoding engine without dynamic allocations. Copy and compare function are now generated to copy and compare ASN.1 values created or decoded with TCE-C.
This chapter presents the new services and the improvements added to the TCE-C v5.0 release with regards to the TCE-C v4.1 release.
ASN.1:2008 compliance
The TCE-C Compiler and runtime are now compliant with the 2008 release of the ASN.1 standards.It supports the following new features:
- New types: TIME, DATE, DATE-TIME, TIME-OF-DAY, DURATION, OID-IRI and RELATIVE-OID-IRI,
- A predefined module DefinedTimeTypes for time-related types.
Constraint check using code generation technology
In order to improve the runtime performance, constraint checking using generated code is now available for code-generation technology. Up to the previous release table-driven constraint checking was used for code-generation encoding or decoding.When the ASN.1 syntax is compiled with the option -tech codegen additional files for constraint checking are generated. They must be compiled and linked with the user application and [COMP-USG] for a full list of generated files.
Huge integer type for code generation technology
Integer types which cannot be mapped on a standard or a long integer type can be processed by using the format comment --$ IntegerRange huge --. This feature was available for the table-driven encoding/decoding engine only.In TCE-C v5.0 this feature was extended for the usage with code-generation technology.
Code generation technology without dynamic memory allocations
Some ASN.1 types require memory allocations during decoding. In order to avoid these allocations the formal comment --$ implement size -- has been introduced in the previous release. However, this feature was available for the table-driven encoding/decoding engine only.In TCE-C v5.0 this feature was extended for the usage with code-generation technology.