ASN1C generated code consists of type definitions and encode/decode functions (or methods) that provide a complete Application Programming Interface (API) for working with the message definitions contained within an ASN.1 specification.In addition to the ASN.1 compiler, a run-time library of common encode/decode functions is also part of the package. This library contains routines to encode and decode ASN.1 primitives (BOOLEAN, INTEGER, etc.). The ASN1C ASN.1 compiler assembles a series of calls to these functions to accomplish the encoding or decoding of more complex message types.
All that a programmer needs to do to get an encoder/decoder up and running is to:
- Run ASN1C to generate code for a given ASN.1 or XSD specification,
- Develop an application to call functions/methods within the generated code,
- Compile/link the application, generated code, and run-time libraries.
To assist with items 2 and 3, the compiler also has the capability to generate sample reader and writer programs as well as a makefile to build all of the generated code.