33 lines
1.2 KiB
C#
33 lines
1.2 KiB
C#
//using System;
|
|
|
|
namespace RoboidControl {
|
|
|
|
/// <summary>
|
|
/// A temperature sensor
|
|
/// </summary>
|
|
public class TemperatureSensor : Thing {
|
|
/// <summary>
|
|
/// The measured temperature
|
|
/// </summary>
|
|
public float temperature = 0;
|
|
|
|
/// <summary>
|
|
/// Create a temperature sensor with the given ID
|
|
/// </summary>
|
|
/// <param name="participant">The participant for with the sensor is needed</param>
|
|
/// <param name="networkId">The network ID of the sensor</param>
|
|
/// <param name="thingId">The ID of the thing</param>
|
|
public TemperatureSensor(Participant participant, byte networkId, byte thingId) : base(participant, networkId, thingId, (byte)Type.TemperatureSensor) {}
|
|
|
|
/// <summary>
|
|
/// Function to extract the temperature received in the binary message
|
|
/// </summary>
|
|
/// <param name="bytes">The byte array</param>
|
|
public override void ProcessBinary(byte[] bytes) {
|
|
byte ix = 0;
|
|
this.temperature = LowLevelMessages.ReceiveFloat16(bytes, ref ix);
|
|
//Console.WriteLine($"temperature {this.name} = {this.temperature} C");
|
|
}
|
|
}
|
|
|
|
} |