This is Unofficial EPICS BASE Doxygen Site
cvtFast.h
Go to the documentation of this file.
1 /*************************************************************************\
2 * Copyright (c) 2013 UChicago Argonne LLC, as Operator of Argonne
3 * National Laboratory.
4 * Copyright (c) 2002 The Regents of the University of California, as
5 * Operator of Los Alamos National Laboratory.
6 * EPICS BASE is distributed subject to a Software License Agreement found
7 * in file LICENSE that is included with this distribution.
8 \*************************************************************************/
9 /*
10  * Fast numeric to string conversions
11  *
12  * Original Authors:
13  * Bob Dalesio, Mark Anderson and Marty Kraimer
14  * Date: 12 January 1993
15  */
16 
17 #ifndef INCcvtFasth
18 #define INCcvtFasth
19 
20 #include <stddef.h>
21 
22 #include "epicsTypes.h"
23 #include "libComAPI.h"
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
29 /*
30  * All functions return the number of characters in the output
31  */
32 LIBCOM_API int
33  cvtFloatToString(float val, char *pdest, epicsUInt16 prec);
34 LIBCOM_API int
35  cvtDoubleToString(double val, char *pdest, epicsUInt16 prec);
36 
37 LIBCOM_API int
38  cvtFloatToExpString(float val, char *pdest, epicsUInt16 prec);
39 LIBCOM_API int
40  cvtDoubleToExpString(double val, char *pdest, epicsUInt16 prec);
41 LIBCOM_API int
42  cvtFloatToCompactString(float val, char *pdest, epicsUInt16 prec);
43 LIBCOM_API int
44  cvtDoubleToCompactString(double val, char *pdest, epicsUInt16 prec);
45 
46 LIBCOM_API size_t
47  cvtInt32ToString(epicsInt32 val, char *pdest);
48 LIBCOM_API size_t
49  cvtUInt32ToString(epicsUInt32 val, char *pdest);
50 LIBCOM_API size_t
51  cvtInt64ToString(epicsInt64 val, char *pdest);
52 LIBCOM_API size_t
53  cvtUInt64ToString(epicsUInt64 val, char *pdest);
54 
55 LIBCOM_API size_t
56  cvtInt32ToHexString(epicsInt32 val, char *pdest);
57 LIBCOM_API size_t
58  cvtUInt32ToHexString(epicsUInt32 val, char *pdest);
59 LIBCOM_API size_t
60  cvtInt32ToOctalString(epicsInt32 val, char *pdest);
61 LIBCOM_API size_t
62  cvtInt64ToHexString(epicsInt64 val, char *pdest);
63 LIBCOM_API size_t
64  cvtUInt64ToHexString(epicsUInt64 val, char *pdest);
65 
66 /* Support the original names */
67 
68 #define cvtCharToString(val, str) cvtInt32ToString(val, str)
69 #define cvtUcharToString(val, str) cvtUInt32ToString(val, str)
70 #define cvtShortToString(val, str) cvtInt32ToString(val, str)
71 #define cvtUshortToString(val, str) cvtUInt32ToString(val, str)
72 #define cvtLongToString(val, str) cvtInt32ToString(val, str)
73 #define cvtUlongToString(val, str) cvtUInt32ToString(val, str)
74 
75 #define cvtLongToHexString(val, str) cvtInt32ToHexString(val, str)
76 #define cvtULongToHexString(val, str) cvtUInt32ToHexString(val, str)
77 #define cvtLongToOctalString(val, str) cvtInt32ToOctalString(val, str)
78 
79 #ifdef __cplusplus
80 }
81 #endif
82 
83 #endif /*INCcvtFasth*/
unsigned short epicsUInt16
Definition: epicsTypes.h:41
LIBCOM_API size_t cvtUInt64ToString(epicsUInt64 val, char *pdest)
Definition: cvtFast.c:384
unsigned int epicsUInt32
Definition: epicsTypes.h:43
LIBCOM_API size_t cvtInt32ToString(epicsInt32 val, char *pdest)
Definition: cvtFast.c:362
LIBCOM_API size_t cvtInt32ToHexString(epicsInt32 val, char *pdest)
Definition: cvtFast.c:418
unsigned long long epicsUInt64
Definition: epicsTypes.h:45
LIBCOM_API int cvtDoubleToExpString(double val, char *pdest, epicsUInt16 prec)
Definition: cvtFast.c:230
LIBCOM_API size_t cvtUInt64ToHexString(epicsUInt64 val, char *pdest)
Definition: cvtFast.c:509
LIBCOM_API size_t cvtUInt32ToHexString(epicsUInt32 val, char *pdest)
Definition: cvtFast.c:444
LIBCOM_API size_t cvtInt32ToOctalString(epicsInt32 val, char *pdest)
Definition: cvtFast.c:459
LIBCOM_API size_t cvtUInt32ToString(epicsUInt32 val, char *pdest)
Definition: cvtFast.c:350
LIBCOM_API int cvtFloatToExpString(float val, char *pdest, epicsUInt16 prec)
Definition: cvtFast.c:201
LIBCOM_API int cvtDoubleToCompactString(double val, char *pdest, epicsUInt16 prec)
Definition: cvtFast.c:243
LIBCOM_API int cvtFloatToCompactString(float val, char *pdest, epicsUInt16 prec)
Definition: cvtFast.c:213
LIBCOM_API size_t cvtInt64ToHexString(epicsInt64 val, char *pdest)
Definition: cvtFast.c:483
int prec
Definition: reader.c:29
LIBCOM_API size_t cvtInt64ToString(epicsInt64 val, char *pdest)
Definition: cvtFast.c:396
LIBCOM_API int cvtDoubleToString(double val, char *pdest, epicsUInt16 prec)
Definition: cvtFast.c:110
int epicsInt32
Definition: epicsTypes.h:42
LIBCOM_API int cvtFloatToString(float val, char *pdest, epicsUInt16 prec)
Definition: cvtFast.c:31
long long epicsInt64
Definition: epicsTypes.h:44