util.h Source File

- Main Page
- Tutorials
- Functions
- Release Notes
- Examples

util.h
Go to the documentation of this file.
1 /*******************************************************
2 * Copyright (c) 2014, ArrayFire
3 * All rights reserved.
4 *
5 * This file is distributed under 3-clause BSD license.
6 * The complete license agreement can be obtained at:
7 * http://arrayfire.com/licenses/BSD-3-Clause
8 ********************************************************/
9
10 #pragma once
11 #include <af/defines.h>
12
13 #ifdef __cplusplus
14 namespace af
15 {
16 class array;
17
24 AFAPI void print(const char *exp, const array &arr);
25
26 #if AF_API_VERSION >= 31
27
34 AFAPI void print(const char *exp, const array &arr, const int precision);
35 #endif
36
37 #if AF_API_VERSION >= 31
38
49 AFAPI int saveArray(const char *key, const array &arr, const char *filename, const bool append = false);
50 #endif
51
52 #if AF_API_VERSION >= 31
53
63 AFAPI array readArray(const char *filename, const unsigned index);
64 #endif
65
66 #if AF_API_VERSION >= 31
67
77 AFAPI array readArray(const char *filename, const char *key);
78 #endif
79
80 #if AF_API_VERSION >= 31
81
92 AFAPI int readArrayCheck(const char *filename, const char *key);
93 #endif
94
95 #if AF_API_VERSION >= 31
96
108 AFAPI void toString(char **output, const char *exp, const array &arr,
109 const int precision = 4, const bool transpose = true);
110 #endif
111
112 #if AF_API_VERSION >= 33
113
126 AFAPI const char* toString(const char *exp, const array &arr,
127 const int precision = 4, const bool transpose = true);
128 #endif
129
130 // Purpose of Addition: "How to add Function" documentation
131 AFAPI array exampleFunction(const array& in, const af_someenum_t param);
132 }
133
134 #if AF_API_VERSION >= 31
135
136 #define AF_PRINT1(exp) af::print(#exp, exp);
137 #define AF_PRINT2(exp, precision) af::print(#exp, exp, precision);
138
139 #define GET_PRINT_MACRO(_1, _2, NAME, ...) NAME
140
141 #define af_print(...) GET_PRINT_MACRO(__VA_ARGS__, AF_PRINT2, AF_PRINT1)(__VA_ARGS__)
142
143 #else // AF_API_VERSION
144
145 #define af_print(exp) af::print(#exp, exp);
146
147 #endif // AF_API_VERSION
148
149 #endif //__cplusplus
150
151 #ifdef __cplusplus
152 extern "C" {
153 #endif
154
162 AFAPI af_err af_print_array(af_array arr);
163
164 #if AF_API_VERSION >= 31
165
174 AFAPI af_err af_print_array_gen(const char *exp, const af_array arr, const int precision);
175 #endif
176
177 #if AF_API_VERSION >= 31
178
188 AFAPI af_err af_save_array(int *index, const char* key, const af_array arr, const char *filename, const bool append);
189 #endif
190
191 #if AF_API_VERSION >= 31
192
201 AFAPI af_err af_read_array_index(af_array *out, const char *filename, const unsigned index);
202 #endif
203
204 #if AF_API_VERSION >= 31
205
214 AFAPI af_err af_read_array_key(af_array *out, const char *filename, const char* key);
215 #endif
216
217 #if AF_API_VERSION >= 31
218
228 AFAPI af_err af_read_array_key_check(int *index, const char *filename, const char* key);
229 #endif
230
231 #if AF_API_VERSION >= 31
232
243 AFAPI af_err af_array_to_string(char **output, const char *exp, const af_array arr,
244 const int precision, const bool transpose);
245 #endif
246
247 // Purpose of Addition: "How to add Function" documentation
248 AFAPI af_err af_example_function(af_array* out, const af_array in, const af_someenum_t param);
249
253 AFAPI af_err af_get_version(int *major, int *minor, int *patch);
254
255
256 #if AF_API_VERSION >= 33
257 AFAPI const char *af_get_revision();
263 #endif
264
265 #ifdef __cplusplus
266 }
267 #endif
af::toString
AFAPI void toString(char **output, const char *exp, const array &arr, const int precision=4, const bool transpose=true)
af
Definition: algorithm.h:14
af_read_array_index
AFAPI af_err af_read_array_index(af_array *out, const char *filename, const unsigned index)
af::readArray
AFAPI array readArray(const char *filename, const unsigned index)
af_read_array_key
AFAPI af_err af_read_array_key(af_array *out, const char *filename, const char *key)
af::print
AFAPI void print(const char *exp, const array &arr)
af::readArrayCheck
AFAPI int readArrayCheck(const char *filename, const char *key)
When reading by key, it may be a good idea to run this function first to check for the key and then c...
af_get_revision
AFAPI const char * af_get_revision()
Get the revision (commit) information of the library.
af_example_function
AFAPI af_err af_example_function(af_array *out, const af_array in, const af_someenum_t param)
afcl::array
static af::array array(af::dim4 idims, cl_mem buf, af::dtype type, bool retain=false)
Create an af::array object from an OpenCL cl_mem buffer.
Definition: opencl.h:337
af_err
af_err
Definition: defines.h:67
af_print_array_gen
AFAPI af_err af_print_array_gen(const char *exp, const af_array arr, const int precision)
af_save_array
AFAPI af_err af_save_array(int *index, const char *key, const af_array arr, const char *filename, const bool append)
defines.h
af_someenum_t
af_someenum_t
Definition: defines.h:384
af_print_array
AFAPI af_err af_print_array(af_array arr)
af_get_version
AFAPI af_err af_get_version(int *major, int *minor, int *patch)
Get the version information of the library.
af_read_array_key_check
AFAPI af_err af_read_array_key_check(int *index, const char *filename, const char *key)
When reading by key, it may be a good idea to run this function first to check for the key and then c...
AFAPI
#define AFAPI
Definition: defines.h:31
af_array_to_string
AFAPI af_err af_array_to_string(char **output, const char *exp, const af_array arr, const int precision, const bool transpose)
af::saveArray
AFAPI int saveArray(const char *key, const array &arr, const char *filename, const bool append=false)
af::exp
AFAPI array exp(const array &in)
C++ Interface for exponential of an array.
af_array
void * af_array
Definition: defines.h:226
af::exampleFunction
AFAPI array exampleFunction(const array &in, const af_someenum_t param)
af::transpose
AFAPI array transpose(const array &in, const bool conjugate=false)
Transposes a matrix.