home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 411b.lha / dme_1.42 / src.LZH / src / rexx.h < prev    next >
C/C++ Source or Header  |  1990-03-06  |  3KB  |  92 lines

  1. /*
  2.  *  REXX.H
  3.  *
  4.  *    (c) Copyright 1988 Kim DeVaughn, All Rights Reserved
  5.  *
  6.  *  Definitions for the ARexx interface, in addition to the ARexx includes.
  7.  *
  8.  */
  9.  
  10. #ifndef REXX_STORAGE_H
  11. #include "rexx/storage.h"
  12. #endif
  13.  
  14. #ifndef REXX_H
  15. #define REXX_H
  16.  
  17.  
  18.  
  19. /*  More RexxMsg field definitions, to make life a little easier.         */
  20.  
  21. #define  ACTION(rmp)     (rmp->rm_Action)    /* command (action) code        */
  22. #define  RESULT1(rmp)    (rmp->rm_Result1)   /* primary result (return code) */
  23. #define  RESULT2(rmp)    (rmp->rm_Result2)   /* secondary result             */
  24. #define  COMM_ADDR(rmp)  (rmp->rm_CommAddr)  /* host address (port name)     */
  25. #define  FILE_EXT(rmp)   (rmp->rm_FileExt)   /* file extension               */
  26.  
  27.  
  28.  
  29. /*
  30.  *  Error Level Definitions   [ PRELIMINARY - SUBJECT TO CHANGE ]
  31.  *
  32.  *  Definitions for internal  (dme)  error reporting begin with CMD_
  33.  *  Definitions for external (ARexx) error reporting begin with MAC_
  34.  *
  35.  *
  36.  *         0 - command execution successful [normal]       (i.e., title = OK)
  37.  *         1 - command execution successful [alternate]  (i.e., title = OK)
  38.  *         2 - command execution successful [normal]       (don't alter title)
  39.  *         3 - command execution successful [alternate]  (don't alter title)
  40.  *         4 - reserved
  41.  *         5 - command could not complete requested function
  42.  *        10 - command was unable to process correctly
  43.  *        20 - command failure detected - data integrity in question
  44.  *        50 - internal error detected by  dme  or  ARexx
  45.  *
  46.  *  Only levels 0 and 1 allow the ARexx interface code to explicitly set title.
  47.  *
  48.  *
  49.  *  Eg:      0 - the normal case ("OK")
  50.  *         1 - a secondary succeeful result ("OK")
  51.  *         2 - normal, but may have put up an informational message
  52.  *         3 - secondary normal, but may have informational message
  53.  *         4 -
  54.  *         5 - "find" didn't find, "file not found", "block not marked", etc.
  55.  *        10 - "command not found", "syntax error", etc.
  56.  *        15 - a sever failure; "write failed", "unable to open write file", etc.
  57.  *        20 - maybe a sequence of commands that failed; may have modified data
  58.  *        50 - dunno, but definitely bad shit
  59.  */
  60.  
  61. #define  CMD_VALID0        0
  62. #define  CMD_VALID1        1
  63. #define  CMD_VALID2        2
  64. #define  CMD_VALID3        3
  65. #define  CMD_VALID4        4
  66. #define  CMD_FAILED        5
  67. #define  CMD_ERROR       10
  68. #define  CMD_SEVERE       15
  69. #define  CMD_ABORT       20
  70. #define  CMD_MALFUNCTION   50
  71.  
  72.  
  73. /*  Similar to the internal command error levels above, for the moment. */
  74.  
  75. #define  MAC_VALID0        0
  76. #define  MAC_VALID1        1
  77. #define  MAC_VALID2        2
  78. #define  MAC_VALID3        3
  79. #define  MAC_VALID4        4
  80. #define  MAC_FAILED        5
  81. #define  MAC_ERROR       10
  82. #define  MAC_SEVERE       15
  83. #define  MAC_ABORT       20
  84. #define  MAC_MALFUNCTION   50
  85.  
  86.  
  87. #define  CMD_INITIAL       0
  88. #define  TITLE_THRESHHOLD  CMD_VALID1
  89.  
  90. #endif
  91.  
  92.