コード例 #1
0
 public void CopyValues(TempHardwareBox other)
 {
     this.type     = other.type;
     this.booleans = other.booleans;
     this.integers = other.integers;
     this.doubles  = other.doubles;
     this.strings  = other.strings;
 }
コード例 #2
0
    public Hardware decodeHardware(string hardwareJson)
    {
        TempHardwareBox tempHardwareBox = (TempHardwareBox)JsonUtility.FromJson(hardwareJson, typeof(TempHardwareBox));

        Hardware tempHardware = (Hardware)Activator.CreateInstance(Type.GetType(tempHardwareBox.type));

        tempHardware.CopyValues(tempHardwareBox);

        return(tempHardware);
    }
コード例 #3
0
    public void decodeMessage(string jsonMessage)
    {
        robotPacket = (RobotPacket)JsonUtility.FromJson(jsonMessage, typeof(RobotPacket));

        if (robotPacket.hardware.Count == robotPacket.hardwareString.Count)
        {
            for (int i = 0; i < robotPacket.hardwareString.Count; i++)
            {
                string          hardwareJson    = robotPacket.hardwareString[i];
                TempHardwareBox tempHardwareBox = (TempHardwareBox)JsonUtility.FromJson(hardwareJson, typeof(TempHardwareBox));
                robotPacket.hardware[i].CopyValues(tempHardwareBox);
            }
        }
        else
        {
            robotPacket.hardware.Clear();

            for (int i = 0; i < robotPacket.hardwareString.Count; i++)
            {
                robotPacket.hardware.Add(decodeHardware(robotPacket.hardwareString[i]));
            }
        }
    }