public class FramingHeaderSpecification extends Object
The specification defines the Simple Open Framing Header (SOFH) that prepends SBE message header and the message content.
It is used for creating the MessageSchema instance.
This class allows to configure different parameters of the both SOFH fields: messageLength and encodingType.
Please note that despite the fact the SOFH Standard assumes for the messageLength field big-endian encoding only, here it possible to specify little-endian encoding for all SOFH fields.
Also, the class contains a set of predefined static constants for particular headers.
| Modifier and Type | Class and Description |
|---|---|
static class |
FramingHeaderSpecification.EndianessFieldSpecification
Specification for the
encodingType field. |
static class |
FramingHeaderSpecification.FieldSpecification
Field specification.
|
| Modifier and Type | Field and Description |
|---|---|
static FramingHeaderSpecification |
B3_FRAMING_HEADER
Specification for the Simple Open Framing Header that is compliant to the B3 requirements.
|
static byte[] |
CME_SBE_1_0_LE_BIGENDIAN_SIGN
Signature for big-endian-encoded message in little-endian-encoded header.
|
static byte[] |
CME_SBE_1_0_LE_LITTLEENDIAN_SIGN
Signature for little-endian-encoded message in little-endian-encoded header.
|
static FramingHeaderSpecification |
CMEILINK3_FRAMING_HEADER
Specification for the Simple Open Framing Header that is compliant to the CME iLink3 requirements.
|
static FramingHeaderSpecification |
CMEMDP3_FRAMING_HEADER
Specification for the Simple Open Framing Header that is compliant to the CME MDP3 requirements.
|
static byte[] |
SBE_1_0_BE_BIGENDIAN_SIGN
Signature for big-endian-encoded message in big-endian-encoded header.
|
static byte[] |
SBE_1_0_BE_LITTLEENDIAN_SIGN
Signature for little-endian-encoded message in big-endian-encoded header.
|
static byte[] |
SBE_1_0_LE_BIGENDIAN_SIGN
Signature for big-endian-encoded message in little-endian-encoded header.
|
static byte[] |
SBE_1_0_LE_LITTLEENDIAN_SIGN
Signature for little-endian-encoded message in little-endian-encoded header.
|
static FramingHeaderSpecification |
SBE_BE_FRAMING_HEADER
Specification for the Simple Open Framing Header that is compliant to the SBE v.1.0 standard.
|
| Constructor and Description |
|---|
FramingHeaderSpecification(FramingHeaderSpecification.FieldSpecification messageSize,
FramingHeaderSpecification.EndianessFieldSpecification endianess)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
FramingHeaderSpecification.EndianessFieldSpecification |
getEndianessField()
Specification of the
encodingType field. |
FramingHeaderSpecification.FieldSpecification |
getMessageSizeField()
Specification of the
messageLength field. |
int |
getSize()
Whole size of the framing header.
|
public static final byte[] SBE_1_0_BE_BIGENDIAN_SIGN
In byte representation that is the 2-bytes sequence: [0x5B, 0xE0]. The constant compliant to the SBE v.1.0 standard.
public static final byte[] SBE_1_0_BE_LITTLEENDIAN_SIGN
In byte representation that is the 2-bytes sequence: [0xEB, 0x50]. The constant compliant to the SBE v.1.0 standard.
public static final byte[] SBE_1_0_LE_BIGENDIAN_SIGN
In byte representation that is the 2-bytes sequence: [0xE0, 0x5B]. The constant is derived from the SBE v.1.0 standard.
public static final byte[] SBE_1_0_LE_LITTLEENDIAN_SIGN
In byte representation that is the 2-bytes sequence: [0x50, 0xEB]. The constant is derived from the SBE v.1.0 standard.
public static final byte[] CME_SBE_1_0_LE_LITTLEENDIAN_SIGN
In byte representation that is the 2-bytes sequence: [0xFE, 0xCE]. The constant compliant to the CME iLink3 requirements.
public static final byte[] CME_SBE_1_0_LE_BIGENDIAN_SIGN
In byte representation that is the 2-bytes sequence: [0xFE, 0xCE]. The constant is derived from the CME iLink3 requirements.
public static final FramingHeaderSpecification SBE_BE_FRAMING_HEADER
The 6-bytes header consists of:
messageLength: uint32, big-endian;encodingType: uint16, big-endian. Use SBE_1_0_BE_LITTLEENDIAN_SIGN or SBE_1_0_BE_BIGENDIAN_SIGN signatures.public static final FramingHeaderSpecification B3_FRAMING_HEADER
The 4-bytes header consists of:
messageLength: uint16, little-endian;encodingType: uint16, little-endian. Use SBE_1_0_LE_LITTLEENDIAN_SIGN or SBE_1_0_LE_BIGENDIAN_SIGN signatures.public static final FramingHeaderSpecification CMEILINK3_FRAMING_HEADER
The 4-bytes header consists of:
messageLength: uint16, little-endian;encodingType: uint16, little-endian. Use CME_SBE_1_0_LE_LITTLEENDIAN_SIGN or CME_SBE_1_0_LE_BIGENDIAN_SIGN signatures.public static final FramingHeaderSpecification CMEMDP3_FRAMING_HEADER
The 2-bytes header consists of:
messageLength: uint16, little-endian;encodingType: not used.public FramingHeaderSpecification(FramingHeaderSpecification.FieldSpecification messageSize, FramingHeaderSpecification.EndianessFieldSpecification endianess)
messageSize - Specification for the messageLength field.endianess - Specification for the encodingType field. Can be null.public FramingHeaderSpecification.FieldSpecification getMessageSizeField()
messageLength field.messageLength field.public FramingHeaderSpecification.EndianessFieldSpecification getEndianessField()
encodingType field.encodingType field.public int getSize()
Copyright © 2005–2025 Onix Solutions. All rights reserved.