init
This commit is contained in:
@@ -0,0 +1,133 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// DDASTestDefinition.h
|
||||
// --------------------
|
||||
// Defines the data acquisition system configuration and channels for a test.
|
||||
//
|
||||
//
|
||||
// AUTHOR: A. J. Owski
|
||||
// LOC: 1250
|
||||
// DEPT: 5260 Tool Development
|
||||
// (formerly Instrument Systems)
|
||||
//
|
||||
// COPYRIGHT: (c) 2002-2004 DaimlerChrysler Corp.
|
||||
//
|
||||
// REVISIONS: (most-recent at top of list).
|
||||
//
|
||||
// Date Init Description of Change
|
||||
// -------- --- ---------------------
|
||||
// 06/22/05 WJP Add support for MemoryOptionFlags bits MEMOPT_PREEVENT and
|
||||
// MEMOPT_PREEVENTXXX, Programmable Pre-Event blocks up to 99 and
|
||||
// 511 introduced in Memory Units versions 2.40 and 3.10,
|
||||
// respectively.
|
||||
// 10/19/04 WJP Add support for channel (analog) triggers.
|
||||
// 04/02/04 WJP General clean up
|
||||
// 07/22/03 WJP Added HardwareType
|
||||
//
|
||||
//
|
||||
|
||||
#ifndef DDASTYPENAME // If these def's aren't def'd,
|
||||
|
||||
#define TESTDEFEXT ".tdf"
|
||||
#define DDASTYPENAME "DDAS V5"
|
||||
#define DDASFILEVERS "Ver 500"
|
||||
|
||||
enum FileTypeFlags
|
||||
{
|
||||
FILETYPE_IMPORTED4X // Test was imported from 4x
|
||||
};
|
||||
|
||||
enum HardwareType // Hardware type values
|
||||
{ // in upper 16 bits of FileTypeFlags
|
||||
HWTYPE_UNKNOWN, // None specified - old DDAS
|
||||
HWTYPE_DDAS3, // DDAS III hardware
|
||||
HWTYPE_KAYSERTHREDE, // Kayser-Threde hardware (future)
|
||||
HWTYPE_COUNT
|
||||
};
|
||||
|
||||
typedef struct tagFILEINFOBLOCK
|
||||
{
|
||||
UINT Size; // Block Size (including nSize)
|
||||
char FileTypeName[12]; // Software Type Name
|
||||
char FileTypeVers[12]; // File Version Name
|
||||
UINT FileTypeFlags; // File Type Flags
|
||||
// - Hardware Type in upper 16 bits
|
||||
// - File Type in lower 16 bits
|
||||
char CreatedByName[16]; // Created by T-number
|
||||
char UpdatedByName[16]; // Updated by T-number
|
||||
}FILEINFOBLOCK;
|
||||
|
||||
|
||||
typedef struct tagDATASYSTEMBLOCK
|
||||
{
|
||||
UINT Size; // Block Size (including nSize)
|
||||
UINT NumberOfSystems; // No of systems in this definition
|
||||
UINT ChannelsPerSystem; // Chan per system in this definition
|
||||
UINT MaxSampleRate; // Max (or default) sample rate
|
||||
UINT SizeOfConfig; // Size of 1 DDASCONFIGBLOCK
|
||||
}DATASYSTEMBLOCK;
|
||||
|
||||
|
||||
typedef struct tagDDASCONFIGBLOCK // One config block per system
|
||||
{
|
||||
UINT Size; // Block Size (including nSize)
|
||||
short AnalogUnitNo; // DDAS analog unit for this test
|
||||
short AnalogOptions; // DDAS analog unit options
|
||||
short MemoryUnitNo; // DDAS memory unit for this test
|
||||
short MemoryOptions; // DDAS memory unit options
|
||||
long MemorySize; // DDAS memory unit RAM (bytes)
|
||||
}DDASCONFIGBLOCK;
|
||||
|
||||
enum AnalogOptionFlags
|
||||
{
|
||||
ANAOPT_CHANTRIGGERS // Analog unit has channel triggers
|
||||
};
|
||||
|
||||
enum MemoryOptionFlags
|
||||
{
|
||||
MEMOPT_TAPEMODE, // Memory unit has tape mode
|
||||
MEMOPT_PREEVENT, // Memory unit can sel pre-event to 99
|
||||
MEMOPT_PREEVENTXXX // Memory unit can sel pre-event to 511
|
||||
};
|
||||
|
||||
|
||||
enum RecordModes
|
||||
{
|
||||
RECORDMODE_EVENT, // Normal (event) mode
|
||||
RECORDMODE_TAPE // Tape (manual) mode
|
||||
};
|
||||
|
||||
|
||||
typedef struct tagACQUISITIONBLOCK // Defines data acq params this test
|
||||
{
|
||||
long nSize; // Block Size (including nSize)
|
||||
long nRecordMode; // Enumerated constant data mode
|
||||
long SampleRate; // Samples per second
|
||||
long TotalSamples; // Total samples in record
|
||||
long PreEventSamples; // Pre-Event samples (Rec Mode only!)
|
||||
long TapeModeChannels; // No of Channels (Tape Mode only!)
|
||||
// long nTrigBlock; // Trigger block size if non-zero
|
||||
long nTrigBlock; // Number of trigger entries (can be 0).
|
||||
}ACQUISITIONBLOCK;
|
||||
|
||||
|
||||
// To enable trigger,
|
||||
// ChanNo and LevelPct must be nonzero
|
||||
// and TRIGCHANDSBL must not be set in LevelPct
|
||||
typedef struct tagTRIGCHANDEF // Defines chan (analog) trigger
|
||||
{
|
||||
BYTE ChanNo; // Channel number to use as trigger
|
||||
BYTE LevelPct; // Trig level in % full scale (0=off)
|
||||
}TRIGCHANDEF; // Trigger when signal exceeds +/-level.
|
||||
|
||||
#define MAXTRIGCHANS 4
|
||||
#define TRIGCHANDSBL 0x80
|
||||
|
||||
typedef struct tagTRIGCHANBLOCK // Defines chan (analog) trigs this test
|
||||
{
|
||||
unsigned short SizeBlock; // Block Size in bytes (including nSize)
|
||||
unsigned short NumTrigs; // Number of entries in array TrigChan
|
||||
TRIGCHANDEF TrigChan[MAXTRIGCHANS]; // Channel (analog) triggers. (NOTE that
|
||||
}TRIGCHANBLOCK; // this will be a variable size array,
|
||||
// but we sized it to 1 to avoid warnings.)
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user