![]() |
![]() |
![]() |
![]() |
![]() |
Solution
This section describes the structure and design of the encoding and decoding support in the SDL Suite. It is intended to give you an understanding of the solution.
Functionality
The main goal is to help you to develop executable files, applications or simulators, that can:
- produce BER/PER bit patterns
- consume and decode BER/PER bit patterns
- be configured to work with user specific environment (memory management, buffer management and error handling)
ASN.1 coder framework contains the following functional modules:
- Encoding and decoding functionality (see Encoding and Decoding Functionality)
- Buffer Management System (BMS) (see Buffer Management System)
- Memory Management System (MMS) (see Memory Management System)
- Error Management System (EMS) (see Error Management System)
- Debug print opportunities (see Printing Opportunities)
All these modules will be described in more details in this chapter.
Functionality Access Interfaces
When using the coder functionality, you can choose between different access interfaces. They all share the same implementation.
- Basic SDL interface
- SDL operators that put bytes in octet strings and read bytes from octet strings. Buffer access functions are not visible in this SDL interface. For more information see Encoding/decoding the SDL Basic Interface.
- Extended SDL interface
- SDL encode and decode operators that put bytes in the types CoderBuf and CustomCoderBuf. Parts of the buffer management is visible in the interface. For more information see Encoding/decoding the SDL Extended Interface.
- C code interface
- This interface is used when calling the coders from C code, for example in the environment files. For more information see C Encoding and Decoding Interface.
The SDL and C interfaces are not identical. They are adapted to the properties of the languages.
It is preferred to access the coders from SDL when the encoded bit-pattern must be further processed in the SDL system. One interesting example is when the bit pattern is sent in a signal to another process.
It is preferred to access the coders in C-code in the environment files when the SDL-system does not process the bit pattern internally, for example when sending it to a protocol in the environment.
http://www.ibm.com/rational |
![]() |
![]() |
![]() |
![]() |