Files
DP44/Common/DTS.Common.Serialization/SliceRaw/SliceRaw.File.IChannelHeader.cs
2026-04-17 14:55:32 -04:00

272 lines
5.6 KiB
C#

/*
* DTS.Serialization.SliceRaw.File.IChannelHeader.cs
*
* Copyright © 2009
* Diversified Technical Systems, Inc.
* All Rights Reserved
*/
using System;
namespace DTS.Serialization.SliceRaw
{
public interface IChannelHeader
{
///// <summary>
///// "Magic Key" required for our binary file type.
///// </summary>
/////
//UInt32 RequiredMagicKey
//{
// get;
//}
///// <summary>
///// Header version number required for our binary file type.
///// </summary>
//UInt32 RequiredHeaderVersionNumber
//{
// get;
//}
/// <summary>
/// "Magic Key" relatively-UID <see cref="UInt32"/> for our binary file type.
/// </summary>
uint MagicKey
{
get;
set;
}
/// <summary>
/// <see cref="UInt32"/> header version number for our binary file type.
/// </summary>
uint HeaderVersionNumber
{
get;
set;
}
/// <summary>
/// Get/set offset of sample data start value.
/// </summary>
ulong OffsetOfSampleDataStart
{
get;
set;
}
/// <summary>
/// Get/set number of samples.
/// </summary>
ulong NumberOfSamples
{
get;
set;
}
/// <summary>
/// Get/set number of bits per sample.
/// </summary>
uint NumberOfBitsPerSample
{
get;
set;
}
/// <summary>
/// Get/set signed sample indicator.
/// </summary>
uint AreSamplesSigned
{
get;
set;
}
/// <summary>
/// Get/set sample rate value.
/// </summary>
double SampleRate
{
get;
set;
}
/// <summary>
/// Get/set number of triggers.
/// </summary>
ushort NumberOfTriggers
{
get;
set;
}
/// <summary>
/// Get/set the trigger sample numbers
/// </summary>
ulong[] TriggerSampleNumbers
{
get;
set;
}
/// <summary>
/// Get/set pre test zero level counts.
/// </summary>
int PreTestZeroLevelCounts
{
get;
set;
}
/// <summary>
/// ADC removed during hardware zeroing
/// (added back in for mV values)
/// </summary>
int RemovedADC
{
get;
set;
}
/// <summary>
/// excitation voltage
/// </summary>
double Excitation
{
get;
set;
}
/// <summary>
/// Analog Data Counts (ADC) for 0mV injected signal
/// </summary>
int ZeroMvInADC
{
get;
set;
}
/// <summary>
/// Average ADC over Zero Window specified for channel
/// </summary>
int WindowAverageADC
{
get;
set;
}
/// <summary>
///
/// </summary>
int OriginalOffsetADC
{
get;
set;
}
int TriggerAdjustmentSamples
{
get;
set;
}
/// <summary>
/// Get/set pre test diagnostics level counts.
/// </summary>
int PreTestDiagnosticsLevelCounts
{
get;
set;
}
/// <summary>
/// Get/set pre test noise percentage of full scale.
/// </summary>
double PreTestNoisePercentageOfFullScale
{
get;
set;
}
/// <summary>
/// Get/set post test zero level counts.
/// </summary>
int PostTestZeroLevelCounts
{
get;
set;
}
/// <summary>
/// Get/set post test diagnostics level counts.
/// </summary>
int PostTestDiagnosticsLevelCounts
{
get;
set;
}
/// <summary>
/// Get/set data zero level counts.
/// </summary>
int DataZeroLevelCounts
{
get;
set;
}
/// <summary>
/// Get/set scale factor MV.
/// </summary>
double ScaleFactorMv
{
get;
set;
}
/// <summary>
/// Get/set sensitivity MV/EU
/// </summary>
double MvPerEu
{
get;
set;
}
/// <summary>
/// Get/set EU field length (with terminator).
/// </summary>
ushort EuFieldLengthWithTerminator
{
get;
set;
}
/// <summary>
/// Get/set engineering units.
/// </summary>
char[] EngineeringUnit
{
get;
set;
}
/// <summary>
/// Get/set ISO code.
/// </summary>
char[] IsoCode
{
get;
set;
}
/// <summary>
/// Get the CRC for the current state of the header.
/// </summary>
uint Crc32
{
get;
}
}
}