96 lines
3.5 KiB
C
96 lines
3.5 KiB
C
|
//
|
||
|
// MODULE: TSMap.h
|
||
|
//
|
||
|
// PURPOSE: Structures and other definitions for the Troubleshooter MAP file.
|
||
|
// These use char rather than TCHAR because the file format is always strictly SBCS
|
||
|
// (Single Byte Character Set).
|
||
|
// This should suffice for any values it is ever expected to contain, and saves space
|
||
|
// considerably compared to Unicode, since the file is overwhelmingly text.
|
||
|
//
|
||
|
// COMPANY: Saltmine Creative, Inc. (206)-633-4743 support@saltmine.com
|
||
|
//
|
||
|
// AUTHOR: Joe Mabel
|
||
|
//
|
||
|
// ORIGINAL DATE: 2-26-98
|
||
|
//
|
||
|
//
|
||
|
// Version Date By Comments
|
||
|
//--------------------------------------------------------------------
|
||
|
// V0.1 - JM Original
|
||
|
///////////////////////
|
||
|
|
||
|
#ifndef _TSMAP_
|
||
|
#define _TSMAP_
|
||
|
|
||
|
const char * const k_szMapFileSignature = const_cast < const char * > ("TSMAP");
|
||
|
|
||
|
#define BUFSIZE 256
|
||
|
|
||
|
typedef struct TSMAPFILEHEADER {
|
||
|
char szMapFileSignature[6]; // Always k_szMapFileSignature
|
||
|
char szVersion[6]; // null terminated numeric version number, a positive
|
||
|
// integer <= 99999. Current version: always "00001"
|
||
|
char szRelease[40]; // string uniquely identifying this file.
|
||
|
// plan 1/2/98 is use GUID
|
||
|
DWORD dwOffApp; // offset where applications list starts
|
||
|
DWORD dwLastOffApp; // offset where applications list ends
|
||
|
DWORD dwOffProb; // offset where problem names list starts
|
||
|
DWORD dwLastOffProb; // offset where problem names list ends
|
||
|
DWORD dwOffDevID; // offset where device IDs list starts
|
||
|
DWORD dwLastOffDevID; // offset where device IDs list ends
|
||
|
DWORD dwOffDevClass; // offset where device class GUIDs list starts
|
||
|
DWORD dwLastOffDevClass; // offset where device class GUIDs list ends
|
||
|
|
||
|
} TSMAPFILEHEADER;
|
||
|
|
||
|
typedef struct UIDMAP {
|
||
|
unsigned short cb; // count of bytes in this record
|
||
|
UID uid;
|
||
|
char szMapped[BUFSIZE];
|
||
|
} UIDMAP;
|
||
|
|
||
|
typedef struct APPMAP {
|
||
|
unsigned short cb; // count of bytes in this record
|
||
|
DWORD dwOffVer; // offset where versions list starts
|
||
|
DWORD dwLastOffVer; // offset where versions list ends
|
||
|
char szMapped[BUFSIZE];
|
||
|
} APPMAP;
|
||
|
|
||
|
typedef struct VERMAP {
|
||
|
unsigned short cb; // count of bytes in this record
|
||
|
UID uid; // this version's own UID
|
||
|
UID uidDefault; // UID of version to default to if no data for this version
|
||
|
DWORD dwOffProbUID; // offset where problem UID list starts
|
||
|
DWORD dwLastOffProbUID; // offset where problem UID list ends
|
||
|
DWORD dwOffDevUID; // offset where device UID list starts
|
||
|
DWORD dwLastOffDevUID; // offset where device UID list ends
|
||
|
DWORD dwOffDevClassUID; // offset where device class UID list starts
|
||
|
DWORD dwLastOffDevClassUID; // offset where device class UID list ends
|
||
|
char szMapped[BUFSIZE];
|
||
|
} VERMAP;
|
||
|
|
||
|
typedef struct PROBMAP {
|
||
|
unsigned short cb; // count of bytes in this record
|
||
|
UID uidProb;
|
||
|
DWORD dwOffTSName; // file offset of troubleshooting belief network name
|
||
|
char szProblemNode[BUFSIZE]; // null-terminated symbolic node name (may be null)
|
||
|
} PROBMAP;
|
||
|
|
||
|
typedef struct DEVMAP {
|
||
|
unsigned short cb; // count of bytes in this record
|
||
|
UID uidDev;
|
||
|
UID uidProb;
|
||
|
DWORD dwOffTSName; // file offset of troubleshooting belief network name
|
||
|
char szProblemNode[BUFSIZE]; // null-terminated symbolic node name (may be null)
|
||
|
} DEVMAP;
|
||
|
|
||
|
typedef struct DEVCLASSMAP {
|
||
|
unsigned short cb; // count of bytes in this record
|
||
|
UID uidDevClass;
|
||
|
UID uidProb;
|
||
|
DWORD dwOffTSName; // file offset of troubleshooting belief network name
|
||
|
char szProblemNode[BUFSIZE]; // null-terminated symbolic node name (may be null)
|
||
|
} DEVCLASSMAP;
|
||
|
|
||
|
#endif //_TSMAP_
|