~ubuntu-branches/ubuntu/quantal/icu/quantal

« back to all changes in this revision

Viewing changes to source/common/cpputils.h

  • Committer: Package Import Robot
  • Author(s): Yves Arrouye
  • Date: 2002-03-03 15:31:13 UTC
  • Revision ID: package-import@ubuntu.com-20020303153113-3ssceqlq45xbmbnc
Tags: upstream-2.0-2.1pre20020303
ImportĀ upstreamĀ versionĀ 2.0-2.1pre20020303

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
******************************************************************************
 
3
*
 
4
*   Copyright (C) 1997-2001, International Business Machines
 
5
*   Corporation and others.  All Rights Reserved.
 
6
*
 
7
******************************************************************************
 
8
*   file name:  cpputils.h
 
9
*   encoding:   US-ASCII
 
10
*   tab size:   8 (not used)
 
11
*   indentation:4
 
12
*/
 
13
 
 
14
#ifndef CPPUTILS_H
 
15
#define CPPUTILS_H
 
16
 
 
17
#include "unicode/utypes.h"
 
18
#include "cmemory.h"
 
19
 
 
20
/*==========================================================================*/
 
21
/* Array copy utility functions */
 
22
/*==========================================================================*/
 
23
 
 
24
static
 
25
inline void uprv_arrayCopy(const double* src, double* dst, int32_t count)
 
26
{ uprv_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
 
27
 
 
28
static
 
29
inline void uprv_arrayCopy(const double* src, int32_t srcStart,
 
30
              double* dst, int32_t dstStart, int32_t count)
 
31
{ uprv_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
 
32
 
 
33
static
 
34
inline void uprv_arrayCopy(const int8_t* src, int8_t* dst, int32_t count)
 
35
    { uprv_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
 
36
 
 
37
static
 
38
inline void uprv_arrayCopy(const int8_t* src, int32_t srcStart,
 
39
              int8_t* dst, int32_t dstStart, int32_t count)
 
40
{ uprv_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
 
41
 
 
42
static
 
43
inline void uprv_arrayCopy(const int16_t* src, int16_t* dst, int32_t count)
 
44
{ uprv_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
 
45
 
 
46
static
 
47
inline void uprv_arrayCopy(const int16_t* src, int32_t srcStart,
 
48
              int16_t* dst, int32_t dstStart, int32_t count)
 
49
{ uprv_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
 
50
 
 
51
static
 
52
inline void uprv_arrayCopy(const int32_t* src, int32_t* dst, int32_t count)
 
53
{ uprv_memcpy(dst, src, (size_t)(count * sizeof(*src))); }
 
54
 
 
55
static
 
56
inline void uprv_arrayCopy(const int32_t* src, int32_t srcStart,
 
57
              int32_t* dst, int32_t dstStart, int32_t count)
 
58
{ uprv_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
 
59
 
 
60
static
 
61
inline void
 
62
uprv_arrayCopy(const UChar *src, int32_t srcStart,
 
63
        UChar *dst, int32_t dstStart, int32_t count)
 
64
{ uprv_memcpy(dst+dstStart, src+srcStart, (size_t)(count * sizeof(*src))); }
 
65
 
 
66
#endif /* _CPPUTILS */