Table of Contents

Class CharacteristicCodecFactory

Namespace
Bluetooth.Core.Scanning.Profiles
Assembly
Bluetooth.Core.Scanning.dll

Provides reusable codecs for common characteristic value types.

public static class CharacteristicCodecFactory
Inheritance
CharacteristicCodecFactory
Inherited Members

Methods

ForBool()

Creates a codec for boolean values.

public static ICharacteristicCodec<bool, bool> ForBool()

Returns

ICharacteristicCodec<bool, bool>

ForByte()

Creates a codec for byte values.

public static ICharacteristicCodec<byte, byte> ForByte()

Returns

ICharacteristicCodec<byte, byte>

ForBytes()

Creates a pass-through codec for raw byte payloads.

public static ICharacteristicCodec<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>> ForBytes()

Returns

ICharacteristicCodec<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>>

ForChar()

Creates a codec for character values using UTF-16 little-endian encoding.

public static ICharacteristicCodec<char, char> ForChar()

Returns

ICharacteristicCodec<char, char>

ForDouble()

Creates a codec for double precision floating-point values using little-endian byte order.

public static ICharacteristicCodec<double, double> ForDouble()

Returns

ICharacteristicCodec<double, double>

ForEnum<TEnum>()

Creates a codec for enum values using the enum's underlying integral type.

public static ICharacteristicCodec<TEnum, TEnum> ForEnum<TEnum>() where TEnum : struct, Enum

Returns

ICharacteristicCodec<TEnum, TEnum>

Type Parameters

TEnum

The enum type.

ForInt16()

Creates a codec for signed 16-bit integer values using little-endian byte order.

public static ICharacteristicCodec<short, short> ForInt16()

Returns

ICharacteristicCodec<short, short>

ForInt32()

Creates a codec for signed 32-bit integer values using little-endian byte order.

public static ICharacteristicCodec<int, int> ForInt32()

Returns

ICharacteristicCodec<int, int>

ForInt64()

Creates a codec for signed 64-bit integer values using little-endian byte order.

public static ICharacteristicCodec<long, long> ForInt64()

Returns

ICharacteristicCodec<long, long>

ForSByte()

Creates a codec for signed byte values.

public static ICharacteristicCodec<sbyte, sbyte> ForSByte()

Returns

ICharacteristicCodec<sbyte, sbyte>

ForSingle()

Creates a codec for single precision floating-point values using little-endian byte order.

public static ICharacteristicCodec<float, float> ForSingle()

Returns

ICharacteristicCodec<float, float>

ForString(Encoding?)

Creates a codec for strings using UTF-8 by default.

public static ICharacteristicCodec<string, string> ForString(Encoding? encoding = null)

Parameters

encoding Encoding

Optional text encoding to use. Defaults to UTF-8 when null.

Returns

ICharacteristicCodec<string, string>

ForUInt16()

Creates a codec for unsigned 16-bit integer values using little-endian byte order.

public static ICharacteristicCodec<ushort, ushort> ForUInt16()

Returns

ICharacteristicCodec<ushort, ushort>

ForUInt32()

Creates a codec for unsigned 32-bit integer values using little-endian byte order.

public static ICharacteristicCodec<uint, uint> ForUInt32()

Returns

ICharacteristicCodec<uint, uint>

ForUInt64()

Creates a codec for unsigned 64-bit integer values using little-endian byte order.

public static ICharacteristicCodec<ulong, ulong> ForUInt64()

Returns

ICharacteristicCodec<ulong, ulong>

ForVersion()

Creates a codec for Version values using UTF-8 string serialization.

public static ICharacteristicCodec<Version, Version> ForVersion()

Returns

ICharacteristicCodec<Version, Version>