/// <summary>
        /// Возвращает размер элемента массива данных канала в байтах.
        /// </summary>
        /// <param name="format">
        /// Формат данных.
        /// </param>
        /// <returns>
        /// Размер элемента массива данных канала в байтах.
        /// </returns>
        internal static int GetItemSize(TestLabDataFormat format)
        {
            switch (format)
            {
            case TestLabDataFormat.UInt8:
                return(1);

            case TestLabDataFormat.UInt16:
                return(2);

            case TestLabDataFormat.UInt32:
                return(4);

            case TestLabDataFormat.Int8:
                return(1);

            case TestLabDataFormat.Int16:
                return(2);

            case TestLabDataFormat.Int32:
                return(4);

            case TestLabDataFormat.Float32:
                return(4);

            case TestLabDataFormat.Float64:
                return(8);

            default:
                throw new InvalidOperationException("Формат данных не поддерживается.");
            }
        }
 /// <summary>
 /// Инициализирует новый экземпляр класса.
 /// </summary>
 public TestLabChannelHeader() : base(StorageFormat.TestLab)
 {
     _Description = "";
     _Offset      = 0;
     _Scale       = 1;
     _Type        = TestLabChannelType.Normal;
     _DataFormat  = TestLabDataFormat.Float64;
 }
        /// <summary>
        /// Выполняет проверку и нормализацию значения типа <see cref="TestLabDataFormat"/>.
        /// </summary>
        /// <param name="value">
        /// Исходное значение.
        /// </param>
        /// <returns>
        /// Нормализованное значение.
        /// </returns>
        internal static TestLabDataFormat Validation(TestLabDataFormat value)
        {
            switch (value)
            {
            case TestLabDataFormat.UInt8:
                return(TestLabDataFormat.UInt8);

            case TestLabDataFormat.UInt16:
                return(TestLabDataFormat.UInt16);

            case TestLabDataFormat.UInt32:
                return(TestLabDataFormat.UInt32);

            case TestLabDataFormat.Int8:
                return(TestLabDataFormat.Int8);

            case TestLabDataFormat.Int16:
                return(TestLabDataFormat.Int16);

            case TestLabDataFormat.Int32:
                return(TestLabDataFormat.Int32);

            case TestLabDataFormat.Float32:
                return(TestLabDataFormat.Float32);

            case (TestLabDataFormat)((int)TestLabDataFormat.Float32 | 0x10):
                return(TestLabDataFormat.Float32);

            case TestLabDataFormat.Float64:
                return(TestLabDataFormat.Float64);

            case (TestLabDataFormat)((int)TestLabDataFormat.Float64 | 0x10):
                return(TestLabDataFormat.Float64);

            default:
                throw new InvalidOperationException("Формат данных не поддерживается.");
            }
        }