ASN1C

C# Compiler User's Manual

Objective Systems, Inc.

The software described in this document is furnished under a license agreement and may be used only in accordance with the terms of this agreement. This document may be distributed in any form, electronic or otherwise, provided that it is distributed in its entirety with the copyright and this notice intact. Comments, suggestions, and inquiries regarding ASN1C or this document may be sent by electronic mail to .

Revision History

Table of Contents

1. Overview of ASN1C for C#
2. Using the Compiler
ASN1C C# Command Line Options
Using the GUI Wizard to Run ASN1C
Using the Visual Studio Wizard to Generate ASN1C Projects
Compiler Configuration File
Compiler Error Reporting
3. Generated C# Source Code Overview
Namespace Specification
Class Declaration
Tag Constant
Public Member Variables
Constructors
Decode Method
Encode Method
Other Methods
Inner Classes
Error Handling
4. ASN.1 Type to C# Class Mappings
BOOLEAN
INTEGER
BIT STRING
OCTET STRING
Character String Types
ENUMERATED
NULL
OBJECT IDENTIFIER
RELATIVE-OID
REAL
REAL (Base 10)
SEQUENCE
SET
SEQUENCE OF
SET OF
CHOICE
Open Type
External Type
EmbeddedPDV Type
Parameterized Types
Value Specifications
5. Generated BER/DER/CER Encode Methods
Memory-buffer Based Definite Length Encoders
Stream-Oriented Indefinite Length Encode Methods
6. Generated BER/DER/CER Decode Methods
Generated C# Method Format and Calling Parameters
Procedure for Calling C# BER Decode Methods
Reuse of C# Decoding Objects
7. Generated PER Encode Methods
Generated C# Method Format and Calling Parameters
Procedure for Calling C# PER Encode Methods
Reuse of C# Encoding Objects
8. Generated PER Decode Methods
Generated C# Method Format and Calling Parameters
Procedure for Calling C# PER Decode Methods
Reuse of C# Decoding Objects
9. Generated XML Methods
Overview
Generated Encode Methods
Generated Decode Methods
10. Generated JSON Encode Methods
Generated Method Format and Calling Parameters
Populating Generated Variables for Encoding
Procedure for Calling JSON Encode Methods
Reuse of C# Encoding Objects
11. Generated JSON Decode Methods
Generated Method Format and Calling Parameters
Procedure for Calling C# JSON Decode Methods
Reuse of C# Decoding Objects
12. Generated MDER Encode Methods
Generated Method Format and Calling Parameters
Populating Generated Variables for Encoding
Procedure for Calling MDER Encode Methods
Reuse of Encoding Objects
13. Generated MDER Decode Methods
Generated Method Format and Calling Parameters
Procedure for Calling MDER Decode Methods
Reuse of Decoding Objects
14. Table Constraint Processing
CLASS Specification
Information Object
Information Object Set
Generated Information Object Table Structure
Populating OpenType Variables for Encoding
Decoding Types with Table Constraints
15. Generated Print Methods
Generated C# Method Format and Calling Parameters
16. Generated Makefile
17. Event Handler Interface
How It Works
How to Use It
18. IMPORT/EXPORT of Types
19. Compact Code Generation
20. ASN1C90
ROSE OPERATION and ERROR
SNMP OBJECT-TYPE