samp_osa_exp.c
上传用户:super_houu
上传日期:2008-09-21
资源大小:4099k
文件大小:2k
源码类别:

DVD

开发平台:

Others

  1. /*
  2. file: samp_osa_api.c
  3. decription: implements SAMP osa APIs for use by UI task.
  4. */
  5. #include "config.h"
  6. #ifdef TEST_HARNASS // for test only.//////////////////////////////////////////////////////////////////////////////
  7. #include "IncludeSysDefs.h"
  8. #include "playcoresampsamp_gen.h"
  9. #include "playcoresampschedulersamp_api.h"
  10. SAMP(ErrCode) SAMP_EXP(OS_TaskCreate) (PRIORITY Priority, size_t Stacksize, void(*Entry)(void),IDENT *Id)
  11. {
  12.      SAMP(ErrCode) err;
  13.      SAMP_API_PARAM[0] = (UINT32)Priority ;
  14.      SAMP_API_PARAM[1] = (UINT32)Stacksize ;
  15.      SAMP_API_PARAM[2] = (UINT32)Entry ;
  16.      SAMP_API_PARAM[3] = (UINT32)Id ;
  17.      SAMP_APICallRequest (OSA_TASK_CREATE, &err) ;
  18.      return err;
  19. }
  20. SAMP(ErrCode) SAMP_EXP(OS_TaskDelete) (IDENT Id)
  21. {
  22.      SAMP(ErrCode) err;
  23.      SAMP_API_PARAM[0] = (UINT32)Id ;
  24.      SAMP_APICallRequest (OSA_TASK_DELETE, &err) ;
  25.      return err;
  26. }
  27. SAMP(ErrCode) SAMP_EXP(OS_SemCreate) (UNITS Units,IDENT *Id)
  28. {
  29.      SAMP(ErrCode) err;
  30.      SAMP_API_PARAM[0] = (UINT32)Units ;
  31.      SAMP_API_PARAM[1] = (UINT32)Id ;
  32.      SAMP_APICallRequest (OSA_SEM_CREATE, &err) ;
  33.      return err;
  34. }
  35. SAMP(ErrCode) SAMP_EXP(OS_SemDelete) (IDENT Id)
  36. {
  37.      SAMP(ErrCode) err;
  38.      SAMP_API_PARAM[0] = (UINT32)Id ;
  39.      SAMP_APICallRequest (OSA_SEM_DELETE, &err) ;
  40.      return err;
  41. }
  42. SAMP(ErrCode) SAMP_EXP(OS_SemV) (IDENT Id)
  43. {
  44.      SAMP(ErrCode) err;
  45.      SAMP_API_PARAM[0] = (UINT32)Id ;
  46.      SAMP_APICallRequest (OSA_SEM_V, &err) ;
  47.      return err;
  48. }
  49. #endif//////////////////////////////////////////////////////////////////////////////////////////////////