The OSS ASN.1 Tools completely shields the user from the intricacies of these encoding rules.
You can tailor the OSS ASN.1 Tools' output to suit your needs using command-line options, compiler directives, encoder/decoder flags, and other customization features.
The Space-Optimized Encoder/Decoder (SOED) is table-driven and, as its name implies, minimizes the use of memory, which is especially useful when the schema is large or complex. The SOED is a popular choice for use during development. Both the encoder and decoder have a simple, yet flexible, memory management interface, along with a wealth of trace, error trapping, diagnostic, and recovery features.
The Time-Optimized Encoder/Decoder (TOED) is a popular choice for deployment because of its emphasis on minimizing CPU utilization. OSS purposely minimized the trace feature and used a code-driven, rather than table-driven, design to achieve lightning speed.
The Lean Encoder/Decoder (LED) (packaged separately) is a table-driven encoder/decoder. Similar to the TOED, it is optimized for speed and, similar to the SOED, it uses a minimum amount of memory. The LED is best suited for embedded systems that have a limited amount of memory and require a short amount of processing time while running applications.
The following diagram shows an overview of the SOED and TOED workflow. For more information about choosing the right encoder/decoder that suits your specific needs, see ASN.1 Tools for C++ - Runtime Choices.
SOED and TOED workflow
You can use ASN.1 Studio to:
For more information, go to ASN.1 Studio.
This documentation applies to release 7.0 and later of the OSS® ASN.1 Tools for C++.
Copyright © 2020 OSS Nokalva, Inc. All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means electronic, mechanical, photocopying, recording or otherwise, without the prior permission of OSS Nokalva, Inc.
Every distributed copy of the OSS ASN.1 Tools for C++ is associated with a specific license and related unique license number. That license determines, among other things, what functions of the OSS ASN.1 Tools for C++ are available to you.