/// <summary> /// Figures out how big this message needs to be. /// </summary> /// <param name="message"></param> /// <returns></returns> public static int SizeOfMessage(PowerLineModemMessage.Message message, PowerLineModemMessage sending) { switch (message) { case PowerLineModemMessage.Message.StandardMessageReceived: return 9; case PowerLineModemMessage.Message.ExtendedMessageReceived: return 23; case PowerLineModemMessage.Message.GetImConfiguration: return GetConfiguration.ResponseSize; case PowerLineModemMessage.Message.GetImInfo: return GetInfo.ResponseSize; case PowerLineModemMessage.Message.AllLinkRecordResponse: return AllLinkRecordResponse.ResponseSize; case PowerLineModemMessage.Message.SendInsteonMessage: if (sending != null) { StandardMessage standard = (StandardMessage)sending; if (standard.Packet.Flags.ExtendedMessage) { return ExtendedMessage.ResponseSize; } return StandardMessage.ResponseSize; } return 0; default: return BasicMessage.ResponseSize; } return 0; }
/// <summary> /// Creates the message and fills in the data. /// </summary> /// <param name="message"></param> /// <param name="data"></param> /// <returns></returns> public static PowerLineModemMessage GetReceivedMessage(PowerLineModemMessage.Message message, byte[] data) { switch (message) { case PowerLineModemMessage.Message.StandardMessageReceived: return new StandardMessage(message, data); case PowerLineModemMessage.Message.ExtendedMessageReceived: return new ExtendedMessage(message, data); case PowerLineModemMessage.Message.AllLinkRecordResponse: return new AllLinkRecordResponse(message, data); } return null; }
/// <summary> /// Figures out how big this message needs to be. /// </summary> /// <param name="message"></param> /// <returns></returns> public static int SizeOfMessage(PowerLineModemMessage.Message message, PowerLineModemMessage sending) { switch (message) { case PowerLineModemMessage.Message.StandardMessageReceived: return(9); case PowerLineModemMessage.Message.ExtendedMessageReceived: return(23); case PowerLineModemMessage.Message.GetImConfiguration: return(GetConfiguration.ResponseSize); case PowerLineModemMessage.Message.GetImInfo: return(GetInfo.ResponseSize); case PowerLineModemMessage.Message.AllLinkRecordResponse: return(AllLinkRecordResponse.ResponseSize); case PowerLineModemMessage.Message.SendInsteonMessage: if (sending != null) { StandardMessage standard = (StandardMessage)sending; if (standard.Packet.Flags.ExtendedMessage) { return(ExtendedMessage.ResponseSize); } return(StandardMessage.ResponseSize); } return(0); default: return(BasicMessage.ResponseSize); } return(0); }
public RecievedMessageEventArgs(PowerLineModemMessage message) { this.message = message; }
public BasicMessage(PowerLineModemMessage.Message message) : base(message) { }
public ExtendedMessage(PowerLineModemMessage.Message message, byte[] data) : base(message, data) { }