home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Source Code / SDKs / ScreenLight™ 1.0.1 / CodeExamples / ModuleProcInfos.h < prev    next >
Encoding:
Text File  |  1995-12-16  |  4.0 KB  |  131 lines  |  [TEXT/CWIE]

  1.                                                 // Module Interface
  2.  
  3. typedef OSErr (*ModOpenProcPtr)(void *mpPtr);
  4. typedef OSErr (*ModDrawProcPtr)(void *mpPtr);
  5. typedef OSErr (*ModCloseProcPtr)(void *mpPtr);
  6. typedef OSErr (*ModAboutProcPtr)(void *mpPtr);
  7. typedef OSErr (*ModChangePrefsProcPtr)(void *mpPtr);
  8.  
  9.                                                 // UPP DEFINITIONS
  10. enum { 
  11.     uppModOpenProcInfo = kCStackBased 
  12.                             | RESULT_SIZE(SIZE_CODE(sizeof(OSErr)))
  13.                             | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(void *))),
  14.  
  15.     uppModDrawProcInfo = kCStackBased 
  16.                             | RESULT_SIZE(SIZE_CODE(sizeof(OSErr)))
  17.                             | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(void *))),
  18.  
  19.     uppModCloseProcInfo = kCStackBased 
  20.                             | RESULT_SIZE(SIZE_CODE(sizeof(OSErr)))
  21.                             | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(void *))),
  22.  
  23.     uppModAboutProcInfo = kCStackBased 
  24.                             | RESULT_SIZE(SIZE_CODE(sizeof(OSErr)))
  25.                             | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(void *))),
  26.  
  27.     uppModChangePrefsProcInfo = kCStackBased 
  28.                             | RESULT_SIZE(SIZE_CODE(sizeof(OSErr)))
  29.                             | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(void *)))
  30. };
  31.  
  32.                                                 // PROC DESCRIPTOR - OPEN
  33. #if USESROUTINEDESCRIPTORS
  34.     typedef UniversalProcPtr ModOpenUPP;
  35.  
  36.     #define CallModOpenProc(userRoutine, modPBPtr)        \
  37.             CallUniversalProc((UniversalProcPtr)userRoutine, uppModOpenProcInfo, modPBPtr)
  38.             
  39.     #define NewModOpenProc(userRoutine)        \
  40.             (ModOpenUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppModOpenProcInfo, GetCurrentISA())
  41. #else    
  42.     typedef ModOpenProcPtr ModOpenUPP;
  43.     
  44.     #define CallModOpenProc(userRoutine, modPBPtr)        \
  45.             (*userRoutine)(modPBPtr)
  46.  
  47.     #define NewModOpenProc(userRoutine)        \
  48.             (ModOpenUPP)(userRoutine)
  49. #endif
  50.  
  51.  
  52.                                                 // PROC DESCRIPTOR - DRAW
  53. #if USESROUTINEDESCRIPTORS
  54.     typedef UniversalProcPtr ModDrawUPP;
  55.  
  56.     #define CallModDrawProc(userRoutine, modPBPtr)        \
  57.             CallUniversalProc((UniversalProcPtr)userRoutine, uppModDrawProcInfo, modPBPtr)
  58.             
  59.     #define NewModDrawProc(userRoutine)        \
  60.             (ModOpenUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppModDrawProcInfo, GetCurrentISA())
  61. #else    
  62.     typedef ModDrawProcPtr ModDrawUPP;
  63.     
  64.     #define CallModDrawProc(userRoutine, modPBPtr)        \
  65.             (*userRoutine)(modPBPtr)
  66.  
  67.     #define NewModDrawProc(userRoutine)        \
  68.             (ModOpenUPP)(userRoutine)
  69. #endif
  70.  
  71.  
  72.                                                 // PROC DESCRIPTOR - CLOSE
  73. #if USESROUTINEDESCRIPTORS
  74.     typedef UniversalProcPtr ModCloseUPP;
  75.  
  76.     #define CallModCloseProc(userRoutine, modPBPtr)        \
  77.             CallUniversalProc((UniversalProcPtr)userRoutine, uppModCloseProcInfo, modPBPtr)
  78.             
  79.     #define NewModCloseProc(userRoutine)        \
  80.             (ModOpenUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppModCloseProcInfo, GetCurrentISA())
  81. #else    
  82.     typedef ModCloseProcPtr ModCloseUPP;
  83.     
  84.     #define CallModCloseProc(userRoutine, modPBPtr)        \
  85.             (*userRoutine)(modPBPtr)
  86.  
  87.     #define NewModCloseProc(userRoutine)        \
  88.             (ModOpenUPP)(userRoutine)
  89. #endif
  90.  
  91.  
  92.                                                 // PROC DESCRIPTOR - ABOUT
  93. #if USESROUTINEDESCRIPTORS
  94.     typedef UniversalProcPtr ModAboutUPP;
  95.  
  96.     #define CallModAboutProc(userRoutine, modPBPtr)        \
  97.             CallUniversalProc((UniversalProcPtr)userRoutine, uppModAboutProcInfo, modPBPtr)
  98.             
  99.     #define NewModAboutProc(userRoutine)        \
  100.             (ModAboutUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppModAboutProcInfo, GetCurrentISA())
  101. #else    
  102.     typedef ModAboutProcPtr ModAboutUPP;
  103.     
  104.     #define CallModAboutProc(userRoutine, modPBPtr)        \
  105.             (*userRoutine)(modPBPtr)
  106.  
  107.     #define NewModAboutProc(userRoutine)        \
  108.             (ModAboutUPP)(userRoutine)
  109. #endif
  110.  
  111.  
  112.                                                 // PROC DESCRIPTOR - CHANGEPREFS
  113. #if USESROUTINEDESCRIPTORS
  114.     typedef UniversalProcPtr ModChangePrefsUPP;
  115.  
  116.     #define CallModChangePrefsProc(userRoutine, modPBPtr)        \
  117.             CallUniversalProc((UniversalProcPtr)userRoutine, uppModChangePrefsProcInfo, modPBPtr)
  118.             
  119.     #define NewModChangePrefsProc(userRoutine)        \
  120.             (ModChangePrefsUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppModChangePrefsProcInfo, GetCurrentISA())
  121. #else    
  122.     typedef ModChangePrefsProcPtr ModChangePrefsUPP;
  123.     
  124.     #define CallModChangePrefsProc(userRoutine, modPBPtr)        \
  125.             (*userRoutine)(modPBPtr)
  126.  
  127.     #define NewModChangePrefsProc(userRoutine)        \
  128.             (ModChangePrefsUPP)(userRoutine)
  129. #endif
  130.  
  131.