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

DVD

开发平台:

Others

  1. /*
  2. file: samp_sdi_exp.c
  3. decription: implements SAMP sdi APIs for use by UI task.
  4. */
  5. #include "config.h"
  6. #if D_SUPPORT_SACD // ZKR GLSACD
  7. #if 1 // UI need these functions. ///////////////////////////////////////////////////////////////////////////////////
  8. #include "IncludeSysDefs.h"
  9. #include "playcoresampsamp_gen.h"
  10. #include "playcoresampsamp_sdi.h"
  11. #include "playcoresampschedulersamp_api.h"
  12. #define SAMP_EXP(name) SAMP_EXP_##name
  13. SAMP(ErrCode) SAMP_EXP(SDI_SetAvailableCharSets)( SAMP(UInt8) nrOfCharSets, SAMP(UInt8) *pCharSetList )
  14. {
  15.      SAMP(ErrCode) err;
  16.      SAMP_API_PARAM[0] = (UINT32)nrOfCharSets ;
  17.      SAMP_API_PARAM[1] = (UINT32)pCharSetList ;
  18.      SAMP_APICallRequest (SDI_SETAVAILABLECHARSETS, &err);
  19.      return err;
  20. }
  21. SAMP(ErrCode) SAMP_EXP(SDI_SetLanguagePreference)( SAMP(UInt8) nrOfLanguages, SAMP(SDI_LanguageCodeDef) *pLanguageCodes )
  22. {
  23.      SAMP(ErrCode) err;
  24.      SAMP_API_PARAM[0] = (UINT32)nrOfLanguages ;
  25.      SAMP_API_PARAM[1] = (UINT32)pLanguageCodes ;
  26.      SAMP_APICallRequest (SDI_SETLANGPREF, &err);
  27.      return err;
  28. }
  29. SAMP(ErrCode) SAMP_EXP(SDI_GetAlbumInfo)( SAMP(SDI_Album_Info) *pAlbumInfo )
  30. {
  31.      SAMP(ErrCode) err;
  32.      SAMP_API_PARAM[0] = (UINT32)pAlbumInfo ;
  33.      SAMP_APICallRequest (SDI_GETALBUMINFO, &err);
  34.      return err;
  35. }
  36. SAMP(ErrCode) SAMP_EXP(SDI_GetAlbumText)( SAMP(SDI_AlbumTextField) field, SAMP(SDI_TextChannelType) type, SAMP(UInt32) bufferSize, void *pAlbumText, SAMP(UInt8) *pCharSet, SAMP(SDI_LanguageCodeDef) *pLanguage )
  37. {
  38.      SAMP(ErrCode) err;
  39.      SAMP_API_PARAM[0] = (UINT32)field ;
  40.      SAMP_API_PARAM[1] = (UINT32)type ;
  41.      SAMP_API_PARAM[2] = (UINT32)bufferSize ;
  42.      SAMP_API_PARAM[3] = (UINT32)pAlbumText ;
  43.      SAMP_API_PARAM[4] = (UINT32)pCharSet ;
  44.      SAMP_API_PARAM[5] = (UINT32)pLanguage ;
  45.      SAMP_APICallRequest (SDI_GETALBUMTEXT, &err);
  46.      return err;
  47. }
  48. SAMP(ErrCode) SAMP_EXP(SDI_GetDiscInfo)( SAMP(SDI_Disc_Info) *pDiscInfo )
  49. {
  50.      SAMP(ErrCode) err;
  51.      SAMP_API_PARAM[0] = (UINT32)pDiscInfo ;
  52.      SAMP_APICallRequest (SDI_GETDISCINFO, &err);
  53.      return err;
  54. }
  55. SAMP(ErrCode) SAMP_EXP(SDI_GetDiscText)( SAMP(SDI_DiscTextField) field, SAMP(SDI_TextChannelType) type, SAMP(UInt32) bufferSize, void *pDiscText, SAMP(UInt8) *pCharSet, SAMP(SDI_LanguageCodeDef) *pLanguage )
  56. {
  57.      SAMP(ErrCode) err;
  58.      SAMP_API_PARAM[0] = (UINT32)field ;
  59.      SAMP_API_PARAM[1] = (UINT32)type ;
  60.      SAMP_API_PARAM[2] = (UINT32)bufferSize ;
  61.      SAMP_API_PARAM[3] = (UINT32)pDiscText ;
  62.      SAMP_API_PARAM[4] = (UINT32)pCharSet ;
  63.      SAMP_API_PARAM[5] = (UINT32)pLanguage ;
  64.      SAMP_APICallRequest (SDI_GETDISCTEXT, &err);
  65.      return err;
  66. }
  67. SAMP(ErrCode) SAMP_EXP(SDI_GetAreaText)( SAMP(SACD_Area) area, SAMP(SDI_AreaTextField) field, SAMP(SDI_TextChannelType) type, SAMP(UInt32) bufferSize, void *pAreaText, SAMP(UInt8) *pCharSet, SAMP(SDI_LanguageCodeDef) *pLanguage )
  68. {
  69.      SAMP(ErrCode) err;
  70.      SAMP_API_PARAM[0] = (UINT32)area ;
  71.      SAMP_API_PARAM[1] = (UINT32)field ;
  72.      SAMP_API_PARAM[2] = (UINT32)type ;
  73.      SAMP_API_PARAM[3] = (UINT32)bufferSize ;
  74.      SAMP_API_PARAM[4] = (UINT32)pAreaText ;
  75.      SAMP_API_PARAM[5] = (UINT32)pCharSet ;
  76.      SAMP_API_PARAM[6] = (UINT32)pLanguage ;
  77.      SAMP_APICallRequest (SDI_GETAREATEXT, &err);
  78.      return err;
  79. }
  80. SAMP(ErrCode) SAMP_EXP(SDI_GetTrackInfo)( SAMP(SACD_Area) area, SAMP(UInt8) trackNr, SAMP(SDI_Track_Info) *pTrackInfo )
  81. {
  82.      SAMP(ErrCode) err;
  83.      SAMP_API_PARAM[0] = (UINT32)area ;
  84.      SAMP_API_PARAM[1] = (UINT32)trackNr ;
  85.      SAMP_API_PARAM[2] = (UINT32)pTrackInfo ;
  86.      SAMP_APICallRequest (SDI_GETTRACKINFO, &err);
  87.      return err;
  88. }
  89. SAMP(ErrCode) SAMP_EXP(SDI_GetTrackText)( SAMP(SACD_Area) area, SAMP(UInt8) trackNr, SAMP(SDI_TrackTextField) field, SAMP(SDI_TextChannelType) type, SAMP(UInt32) bufferSize, void *pTrackText, SAMP(UInt8) *pCharSet, SAMP(SDI_LanguageCodeDef) *pLanguage )
  90. {
  91.      SAMP(ErrCode) err;
  92.      SAMP_API_PARAM[0] = (UINT32)area ;
  93.      SAMP_API_PARAM[1] = (UINT32)trackNr ;
  94.      SAMP_API_PARAM[2] = (UINT32)field ;
  95.      SAMP_API_PARAM[3] = (UINT32)type ;
  96.      SAMP_API_PARAM[4] = (UINT32)bufferSize ;
  97.      SAMP_API_PARAM[5] = (UINT32)pTrackText ;
  98.      SAMP_API_PARAM[6] = (UINT32)pCharSet ;
  99.      SAMP_API_PARAM[7] = (UINT32)pLanguage ;
  100.      SAMP_APICallRequest (SDI_GETTRACKTEXT, &err);
  101.      return err;
  102. }
  103. SAMP(ErrCode) SAMP_EXP(SDI_GetNumberOfIndices)( SAMP(SACD_Area) area, SAMP(UInt8) track, SAMP(UInt8) *pNrOfIndices )
  104. {
  105.      SAMP(ErrCode) err;
  106.      SAMP_API_PARAM[0] = (UINT32)area ;
  107.      SAMP_API_PARAM[1] = (UINT32)track ;
  108.      SAMP_API_PARAM[2] = (UINT32)pNrOfIndices ;
  109.      SAMP_APICallRequest (SDI_GETNUMOFINDEX, &err);
  110.      return err;
  111. }
  112. SAMP(ErrCode) SAMP_EXP(SDI_GetDTCP_Info)(SAMP(UInt32) offset, SAMP(UInt32) size, void *pBuffer)
  113. {
  114.      SAMP(ErrCode) err;
  115.      SAMP_API_PARAM[0] = (UINT32)offset ;
  116.      SAMP_API_PARAM[1] = (UINT32)size ;
  117.      SAMP_API_PARAM[2] = (UINT32)pBuffer ;
  118.      SAMP_APICallRequest (SDI_GETDTCPINFO, &err);
  119.      return err;
  120. }
  121. SAMP(ErrCode) SAMP_EXP(SDI_GetSpecVersion)( SAMP(SDI_Spec_Version) *pSpecVersion )
  122. {
  123.      SAMP(ErrCode) err;
  124.      SAMP_API_PARAM[0] = (UINT32)pSpecVersion ;
  125.      SAMP_APICallRequest (SDI_GETSPECVERSION, &err);
  126.      return err;
  127. }
  128. SAMP(ErrCode) SAMP_EXP(SDI_GetAreaData)(SAMP(SACD_Area) area, SAMP(SDI_Area_Data) *pAreaData )
  129. {
  130.      SAMP(ErrCode) err;
  131.      SAMP_API_PARAM[0] = (UINT32)area ;
  132.      SAMP_API_PARAM[1] = (UINT32)pAreaData ;
  133.      SAMP_APICallRequest (SDI_GETAREADATA, &err);
  134.      return err;
  135. }
  136. #endif//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  137. #endif // D_SUPPORT_SACD