home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / fd2inline-1.0-bin.lha / include / inline / asl.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-10-12  |  1.3 KB  |  47 lines

  1. #ifndef _INLINE_ASL_H
  2. #define _INLINE_ASL_H
  3.  
  4. #ifndef __INLINE_MACROS_H
  5. #include <inline/macros.h>
  6. #endif
  7.  
  8. #ifndef ASL_BASE_NAME
  9. #define ASL_BASE_NAME AslBase
  10. #endif
  11.  
  12. #define AllocAslRequest(reqType, tagList) \
  13.     LP2(0x30, APTR, AllocAslRequest, unsigned long, reqType, d0, struct TagItem *, tagList, a0, \
  14.     , ASL_BASE_NAME)
  15.  
  16. #ifndef NO_INLINE_STDARG
  17. #define AllocAslRequestTags(a0, tags...) \
  18.     ({ULONG _tags[] = { tags }; AllocAslRequest((a0), (struct TagItem *)_tags);})
  19. #endif /* !NO_INLINE_STDARG */
  20.  
  21. #define AllocFileRequest() \
  22.     LP0(0x1e, struct FileRequester *, AllocFileRequest, \
  23.     , ASL_BASE_NAME)
  24.  
  25. #define AslRequest(requester, tagList) \
  26.     LP2(0x3c, BOOL, AslRequest, APTR, requester, a0, struct TagItem *, tagList, a1, \
  27.     , ASL_BASE_NAME)
  28.  
  29. #ifndef NO_INLINE_STDARG
  30. #define AslRequestTags(a0, tags...) \
  31.     ({ULONG _tags[] = { tags }; AslRequest((a0), (struct TagItem *)_tags);})
  32. #endif /* !NO_INLINE_STDARG */
  33.  
  34. #define FreeAslRequest(requester) \
  35.     LP1NR(0x36, FreeAslRequest, APTR, requester, a0, \
  36.     , ASL_BASE_NAME)
  37.  
  38. #define FreeFileRequest(fileReq) \
  39.     LP1NR(0x24, FreeFileRequest, struct FileRequester *, fileReq, a0, \
  40.     , ASL_BASE_NAME)
  41.  
  42. #define RequestFile(fileReq) \
  43.     LP1(0x2a, BOOL, RequestFile, struct FileRequester *, fileReq, a0, \
  44.     , ASL_BASE_NAME)
  45.  
  46. #endif /* _INLINE_ASL_H */
  47.