home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / MATH / VISSIM.ZIP / VSUSER.H < prev    next >
C/C++ Source or Header  |  1994-03-07  |  2KB  |  77 lines

  1. /*************************************************************************
  2.  *              (C) Copyright 1989-1994 Visual Solutions, Inc.           *
  3.  *                      All Rights Reserved                              *
  4.  * This software may not be used, copied or made available to anyone,    *
  5.  * except in accordance with the license under which it is furnished.    *
  6.  *************************************************************************/
  7.  
  8. #if  !defined(_INC_WINDOWS) & !defined(_WINNT_)
  9. typedef unsigned HWND;
  10. typedef unsigned WPARAM;
  11. typedef long LPARAM;
  12. typedef char FAR* LPSTR;
  13. #endif
  14.  
  15. #define EXPORT _export
  16. #ifndef FAR
  17. #define FAR far
  18. #endif
  19. #ifndef PASCAL
  20. # ifdef _WINNT_
  21. #   define PASCAL
  22. # else
  23. #   define PASCAL pascal
  24. #endif
  25. #endif
  26. #define TRUE 1
  27. #define FALSE 0
  28.  
  29. #ifndef NO_PROTOS
  30. # define    P(s) s
  31. #else
  32. # define P(s) ()
  33. #endif
  34.  
  35. typedef void FAR *VOID_PTR;
  36. typedef int FAR PASCAL USER_BLOCK();
  37. typedef void FAR PASCAL USER_BLOCK_V();
  38. typedef long FAR PASCAL USER_BLOCK_L();
  39. typedef char FAR* FAR PASCAL USER_BLOCK_STR();
  40. typedef USER_BLOCK *USER_BLOCK_FUNC;
  41. typedef double FAR DOUBLE;
  42. typedef LPSTR PASCAL USER_EVENT_FUNC( HWND, int, WPARAM, LPARAM);
  43.  
  44. /* Return sim time thru arg pointer since not all langs agree
  45.  * on how to return a double val */
  46. void PASCAL FAR EXPORT getSimTime( DOUBLE *pTime);
  47. void PASCAL FAR EXPORTgetSimTimeStep( DOUBLE *pTimeStep);
  48. void PASCAL EXPORT stopSimulation( int stopVal); /* 1:stop this run,2:stop multirun */
  49. void PASCAL setBlockErr();         /* Flag Block in Red */
  50. int EXPORT debMsg P((char FAR *fmt , ...));
  51. void FAR *PASCAL EXPORT galloc (unsigned long size );
  52. void PASCAL EXPORT gfree (void FAR *freeP );
  53. void FAR *PASCAL EXPORT grealloc (void FAR *inP , unsigned long size );
  54.  
  55. typedef struct {
  56.   char FAR* menuName;
  57.   char FAR* funcName;
  58.   int inputCount;
  59.   int outputCount;
  60.   int paramCount;
  61.   char FAR* helpText;
  62. } USER_MENU_ITEM;
  63.  
  64. void setUserBlockMenu P((USER_MENU_ITEM FAR * ));
  65.  
  66. typedef enum {
  67.   VR_NULL, VR_GET_CONSTRAINTS,
  68.   VR_GET_UNKNOWNS, VR_SET_UNKNOWNS,
  69.   VR_GET_SOLVER_INFO, VR_EXECUTE, VR_GET_UNKNOWNS_INPUT
  70.   , VR_SET_BLOCK_MENU
  71. } VR_CMD;
  72.  
  73. int FAR PASCAL userSolver();
  74. int FAR PASCAL vsmRequest( long FAR*, double FAR*);
  75.  
  76. #define WM_VSM_GET_PARAM_DESC WM_USER+2000
  77.