Click or drag to resize

LengthEncodedFormat Class

Defines a TelegramFormat that can be length-encoded.
Inheritance Hierarchy

Namespace:  Demo3D.HLE.Comms.Telegram
Assembly:  Demo3D.HLE (in Demo3D.HLE.dll) Version: 15.0.2.11458
Syntax
C#
[TypeConverterAttribute(typeof(ExpandableObjectConverter))]
public sealed class LengthEncodedFormat : TelegramFormat, 
	ILengthEncoded

The LengthEncodedFormat type exposes the following members.

Constructors
Properties
  NameDescription
Public propertyIgnoreLengthEncoding
Set to ignore format length encoding.
Public propertyIsBuilt
True if the format has been built into a data type.
(Inherited from TelegramFormat.)
Public propertyLength
Format byte length.
(Overrides TelegramFormatLength.)
Public propertyLengthEncoding
Format length encoding type.
Public propertyLogger
Message logger.
(Inherited from TelegramFormat.)
Public propertyName
Format name.
(Inherited from TelegramFormat.)
Public propertySegments
List of TelegramFormatSegment in order.
(Inherited from TelegramFormat.)
Top
Methods
  NameDescription
Public methodAddSegment
Adds and appends a new TelegramFormatSegment.
(Overrides TelegramFormatAddSegment(TelegramFormatSegment).)
Public methodBuild
Builds the format into a usable data type.
(Overrides TelegramFormatBuild.)
Public methodCreateInstance
Creates an instance of the format data type, i.e., a formatted telegram.
(Inherited from TelegramFormat.)
Public methodFindSegment
Returns an identified TelegramFormatSegment, or null.
(Inherited from TelegramFormat.)
Public methodGetDataType
Gets the built data type representing the format.
(Inherited from TelegramFormat.)
Public methodInsertSegment
Inserts a new TelegramFormatSegment at the specified index.
(Overrides TelegramFormatInsertSegment(TelegramFormatSegment, Int32).)
Public methodProcessInboundTelegram
Processes an inbound telegram.
(Overrides TelegramFormatProcessInboundTelegram(BufferSegment).)
Public methodProcessInboundTelegramToSegments
Processes an inbound telegram into its segments.
(Overrides TelegramFormatProcessInboundTelegramToSegments(BufferSegment).)
Public methodProcessOutboundTelegram
Processes an outbound telegram.
(Overrides TelegramFormatProcessOutboundTelegram(BufferSegment).)
Public methodProcessSegmentsToOutboundTelegram
Processes telegram segments into an outbound telegram.
(Overrides TelegramFormatProcessSegmentsToOutboundTelegram(IListBufferSegment).)
Public methodRemoveSegment
Removes a TelegramFormatSegment by name.
(Inherited from TelegramFormat.)
Public methodReplaceSegments
Replace all current segments with the provided.
(Overrides TelegramFormatReplaceSegments(IEnumerableTelegramFormatSegment).)
Public methodToString
Returns a string that represents the current object.
(Inherited from TelegramFormat.)
Top
Events
  NameDescription
Public eventPropertyChanged
Raised when a property changes.
(Inherited from TelegramFormat.)
Public eventSegmentPropertyChanged
Raised when the properties of a segment is changed.
(Inherited from TelegramFormat.)
Public eventSegmentsChanged
Raised when Segments has changed.
(Inherited from TelegramFormat.)
Top
Extension Methods
  NameDescription
Public Extension MethodDecode
Decodes length-encoded data. Returns encoded data bytes and encoding size.
(Defined by ILengthEncodedExtensions.)
Public Extension MethodEncode
Encodes data length. Length bytes are directly before data bytes.
(Defined by ILengthEncodedExtensions.)
Public Extension MethodGetLengthEncodingSize
Returns the length encoding byte size.
(Defined by ILengthEncodedExtensions.)
Top
Remarks

Segment byte length is always dynamic (-1).

Can accept segments of type LengthEncodedSegment, AlignedSegment or FixedSegment.

Length-encoded by default, set IgnoreLengthEncoding to disable.

See Also