home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 6 / AACD06.ISO / AACD / Programming / ICU / src / icu / source / common / cpputils.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-10-19  |  2.2 KB  |  63 lines

  1. #ifndef CPPUTILS_H
  2. #define CPPUTILS_H
  3.  
  4. #include "utypes.h"
  5.  
  6. #ifdef XP_CPLUSPLUS
  7.  
  8. #include "cmemory.h"
  9. #include "unistr.h"
  10.  
  11. /*===========================================================================*/
  12. /* Array copy utility functions */
  13. /*===========================================================================*/
  14.  
  15. inline void icu_arrayCopy(const double* src, double* dst, int32_t count)
  16. { icu_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
  17.  
  18. inline void icu_arrayCopy(const double* src, int32_t srcStart,
  19.               double* dst, int32_t dstStart, int32_t count)
  20. { icu_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
  21.  
  22. inline void icu_arrayCopy(const int8_t* src, int8_t* dst, int32_t count)
  23.     { icu_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
  24.  
  25. inline void icu_arrayCopy(const int8_t* src, int32_t srcStart,
  26.               int8_t* dst, int32_t dstStart, int32_t count)
  27. { icu_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
  28.  
  29. inline void icu_arrayCopy(const int16_t* src, int16_t* dst, int32_t count)
  30. { icu_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
  31.  
  32. inline void icu_arrayCopy(const int16_t* src, int32_t srcStart,
  33.               int16_t* dst, int32_t dstStart, int32_t count)
  34. { icu_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
  35.  
  36. inline void icu_arrayCopy(const int32_t* src, int32_t* dst, int32_t count)
  37. { icu_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
  38.  
  39. inline void icu_arrayCopy(const int32_t* src, int32_t srcStart,
  40.               int32_t* dst, int32_t dstStart, int32_t count)
  41. { icu_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
  42.  
  43. inline void
  44. icu_arrayCopy(const UChar *src, int32_t srcStart,
  45.         UChar *dst, int32_t dstStart, int32_t count)
  46. { icu_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
  47.  
  48. /******************************************************
  49.  * Simple utility to set output buffer parameters
  50.  ******************************************************/
  51.  
  52. U_CAPI void U_EXPORT2 T_fillOutputParams(const UnicodeString* temp,
  53.                        UChar* result, 
  54.                        const int32_t resultLength,
  55.                        int32_t* resultLengthOut, 
  56.                        UErrorCode* status);
  57. #endif
  58.  
  59.  
  60.  
  61.  
  62. #endif /* _CPPUTILS */
  63.