// Sets the value of the vector element to the given value.
        public static void SetValue(this VectorElement element, string value)
        {
            string[] values = value.Trim('{', '}').Split(',');

            if (element.TypeOfValue == PhysicalType.Char1)
            {
                byte[] bytes = Encoding.ASCII.GetBytes(value + (char)0);
                element.Size = bytes.Length;
                element.SetValues(bytes, 0);
            }
            else if (element.TypeOfValue == PhysicalType.Char2)
            {
                byte[] bytes = Encoding.Unicode.GetBytes(value + (char)0);
                element.Size = bytes.Length;
                element.SetValues(bytes, 0);
            }
            else
            {
                element.Size = values.Length;

                for (int i = 0; i < values.Length; i++)
                {
                    string trim = values[i].Trim();

                    if (element.TypeOfValue == PhysicalType.Guid)
                    {
                        element.SetGuid(i, Guid.Parse(trim));
                    }
                    else if (element.TypeOfValue == PhysicalType.Complex8)
                    {
                        element.Set(i, ComplexNumber.Parse(trim));
                    }
                    else if (element.TypeOfValue == PhysicalType.Complex16)
                    {
                        element.Set(i, ComplexNumber.Parse(trim));
                    }
                    else
                    {
                        element.Set(i, trim);
                    }
                }
            }
        }