/// <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;
 }
Beispiel #3
0
        /// <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)
 {
 }