home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 March / macformat-022.iso / Shareware City / Developers / MW MPW Binaries 1.1.1a2 / mwcPPC / MWCIncludes / Notification.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-01-31  |  2.2 KB  |  97 lines  |  [TEXT/MMCC]

  1. /*
  2.     File:        Notification.h
  3.  
  4.     Copyright:    © 1984-1993 by Apple Computer, Inc., all rights reserved.
  5.  
  6.     WARNING
  7.     This file was auto generated by the interfacer tool. Modifications
  8.     must be made to the master file.
  9.  
  10. */
  11.  
  12. #ifndef __NOTIFICATION__
  13. #define __NOTIFICATION__
  14.  
  15. #ifndef __TYPES__
  16. #include <Types.h>
  17. /*    #include <ConditionalMacros.h>                                */
  18. /*    #include <MixedMode.h>                                        */
  19. /*        #include <Traps.h>                                        */
  20. #endif
  21.  
  22. #ifndef __OSUTILS__
  23. #include <OSUtils.h>
  24. #endif
  25.  
  26. enum  {
  27.     nmType                        = 8
  28. };
  29.  
  30. typedef struct NMRec NMRec, *NMRecPtr;
  31.  
  32. typedef pascal void (*NMProcPtr)(NMRecPtr nmReqPtr);
  33.  
  34. enum {
  35.     uppNMProcInfo = kPascalStackBased
  36.          | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(NMRecPtr)))
  37. };
  38.  
  39. #if USESROUTINEDESCRIPTORS
  40. typedef UniversalProcPtr NMUPP;
  41.  
  42. #define CallNMProc(userRoutine, nmReqPtr)        \
  43.         CallUniversalProc((UniversalProcPtr)(userRoutine), uppNMProcInfo, (nmReqPtr))
  44. #define NewNMProc(userRoutine)        \
  45.         (NMUPP) NewRoutineDescriptor((ProcPtr)(userRoutine), uppNMProcInfo, GetCurrentISA())
  46. #else
  47. typedef NMProcPtr NMUPP;
  48.  
  49. #define CallNMProc(userRoutine, nmReqPtr)        \
  50.         (*(userRoutine))((nmReqPtr))
  51. #define NewNMProc(userRoutine)        \
  52.         (NMUPP)(userRoutine)
  53. #endif
  54.  
  55. #if defined(powerc) || defined (__powerc)
  56. #pragma options align=mac68k
  57. #endif
  58. struct NMRec {
  59.     QElemPtr                    qLink;                            /*next queue entry*/
  60.     short                        qType;                            /*queue type -- ORD(nmType) = 8*/
  61.     short                        nmFlags;                        /*reserved*/
  62.     long                        nmPrivate;                        /*reserved*/
  63.     short                        nmReserved;                        /*reserved*/
  64.     short                        nmMark;                            /*item to mark in Apple menu*/
  65.     Handle                        nmIcon;                            /*handle to small icon*/
  66.     Handle                        nmSound;                        /*handle to sound record*/
  67.     StringPtr                    nmStr;                            /*string to appear in alert*/
  68.     NMUPP                        nmResp;                            /*pointer to response routine*/
  69.     long                        nmRefCon;                        /*for application use*/
  70. };
  71. #if defined(powerc) || defined(__powerc)
  72. #pragma options align=reset
  73. #endif
  74.  
  75. #ifdef __cplusplus
  76. extern "C" {
  77. #endif
  78.  
  79.  
  80. #if USES68KINLINES
  81. #pragma parameter __D0 NMInstall(__A0)
  82. #endif
  83. extern pascal OSErr NMInstall(NMRecPtr nmReqPtr)
  84.  ONEWORDINLINE(0xA05E);
  85.  
  86. #if USES68KINLINES
  87. #pragma parameter __D0 NMRemove(__A0)
  88. #endif
  89. extern pascal OSErr NMRemove(NMRecPtr nmReqPtr)
  90.  ONEWORDINLINE(0xA05F);
  91. #ifdef __cplusplus
  92. }
  93. #endif
  94.  
  95. #endif
  96.  
  97.