cms.h



/*-----------------------
   CMS.H header file
  -----------------------*/

// Readability defines

#define ID_CLOCKTIMER 1   // In cms.c 

// Startup defines
#define NUM_WINDOWS 3

#define SETUP_WIN_NUM 1
#define OPS_WIN_NUM 2
#define DATAACQ_WIN_NUM 3

// Disp dlg defines
#define ID_DISPDLGEXIT 110
#define ID_DISPDLGOK   111
#define ID_DISPDLGCAN  112
#define ID_DISPDLGPT   113
#define ID_DISPDLGLAB  114
#define ID_DISPDLGDISPORD 115
#define ID_DISPDLGLOGORD  116
#define ID_DISPDLGDSKORD  117
#define ID_DISPDLGLOLIM   118
#define ID_DISPDLGHILIM   119
#define ID_DISPDLGRD      120

  // Index into globCntrlClass
#define CC_BUTTONINDEX    0 
#define CC_EDITINDEX      1 
#define CC_LISTBOXINDEX   2 
#define CC_COMBOBOXINDEX  3 
#define CC_SCROLLBARINDEX 4 
#define CC_STATICINDEX    5 

   // In cmsutil.c
#define YEAR  (datetime-&>tm_year % 100)
#define MONTH (datetime-&>tm_mon  + 1)
#define MDAY  (datetime-&>tm_mday)
#define WDAY  (datetime-&>tm_wday)
#define HOUR  (datetime-&>tm_hour)
#define MIN   (datetime-&>tm_min)
#define SEC   (datetime-&>tm_sec)


  // Data Type Defines 

typedef struct tagCNTLPOS
  {
    int cxPos ;
    int cyPos ;
    int cWidth ;
    int cHeight ;
  } CNTLPOS ;

// Function Prototypes

// cmsglob.c
void SetNumDataPts(void) ;

// cms.c Prototypes

long FAR PASCAL _export FrameWndProc  (HWND, UINT, UINT, LONG) ;
BOOL FAR PASCAL _export CloseEnumProc (HWND, LONG) ;

// cmssetup.c Prototypes

long FAR PASCAL _export CMSSetupWndProc  (HWND, UINT, UINT, LONG) ;
void SetSetupCntrlMins (void) ;
void SetCntlPos (int, CNTLPOS *) ;  
void SetDispCharSpace (LONG) ;
int  SetxCnts (int) ;
int  SetyCnts (int) ;
int  SetWidth (int) ;
int  SetHeight (int) ;
BOOL FAR PASCAL _export DataSetupDlgProc (HWND, UINT, UINT, LONG) ;

 
// cmsdataq.c Prototypes

long FAR PASCAL _export CMSDataAcqWndProc   (HWND, UINT, UINT, LONG) ;
void DrawDataPt(HWND, int, HDC) ;
void CalcMinSize (void) ;
void ReSizeData (LONG) ;
void LoadPtList (HWND) ;

// cmsops.c Prototypes

long FAR PASCAL _export CMSOpsWndProc   (HWND, UINT, UINT, LONG) ;
void SetOpsWinMins (void) ;
void SetOpsCharSpace (LONG) ;
void WriteOpsScreenText (HWND, HDC) ; 
void SetOpsCntlPos (int, CNTLPOS *) ;  
int  SetOpsxCnts (int) ;
int  SetOpsyCnts (int) ;
int  SetOpsWidth (int) ;
int  SetOpsHeight (int) ;
void LoadOpsLists (void) ;

// cmsutil.c Prototypes

void UpdateCMSTime (HWND) ;
void SetInternational (void) ;

// Internal CMD Msg ID's

#define ID_MAKEDATAWIN  10
#define ID_MAKEOPSWIN   11
#define ID_MAKESETUPWIN 12

// Menu Item ID's

#define FRAME_MENU_POS     0
#define SETUP_MENU_POS     0
#define DATAACQ_MENU_POS   0
#define OPS_MENU_POS       0

#define IDM_TILE         30
#define IDM_CASCADE      31
#define IDM_ARRANGE      32

#define IDM_FIRSTCHILD  100

#ifndef xGlobDec

          // global variables

extern HANDLE globhCMSInst ;
extern short  globcxCharSpace ;
extern short  globcyCharSpace ;

extern char globCntrlClass[][12] ; 

extern int iNumDataPts ;

struct
   {
     float reading ;
     char *instru ;
     char *displabel ;
     char *prnlabel ;
     char *dsklabel ;
     BOOL read ;
     float lolim ;
     float hilim ;
     int status ;
     int disporder ;
     int prnorder ;
     int dskorder ;
   }
extern   CMSData[] ;


#endif