OmniSciDB  6686921089
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ExampleFunctions.h
Go to the documentation of this file.
1 /*
2  * Copyright 2021 OmniSci, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #pragma once
18 
19 #ifdef HAVE_SYSTEM_TFS
20 #ifndef __CUDACC__
21 
23 
24 // clang-format off
25 /*
26  UDTF: tf_mandelbrot__cpu_(TableFunctionManager, int32_t, int32_t, double, double, double, double, int32_t) -> Column<double> x, Column<double> y, Column<int32_t> num_iterations
27 */
28 // clang-format on
29 
31 int32_t tf_mandelbrot__cpu_(TableFunctionManager& mgr,
32  const int32_t x_pixels,
33  const int32_t y_pixels,
34  const double x_min,
35  const double x_max,
36  const double y_min,
37  const double y_max,
38  const int32_t max_iterations,
39  Column<double>& output_x,
40  Column<double>& output_y,
41  Column<int32_t>& output_num_iterations);
42 
43 // clang-format off
44 /*
45  UDTF: tf_mandelbrot_float__cpu_(TableFunctionManager, int32_t, int32_t, float, float, float, float, int32_t) -> Column<float> x, Column<float> y, Column<int32_t> num_iterations
46 */
47 // clang-format on
48 
50 int32_t tf_mandelbrot_float__cpu_(TableFunctionManager& mgr,
51  const int32_t x_pixels,
52  const int32_t y_pixels,
53  const float x_min,
54  const float x_max,
55  const float y_min,
56  const float y_max,
57  const int32_t max_iterations,
58  Column<float>& output_x,
59  Column<float>& output_y,
60  Column<int32_t>& output_num_iterations);
61 
62 #else // #ifndef __CUDACC__
63 
64 // clang-format off
65 /*
66  UDTF: tf_mandelbrot_cuda__gpu_(int32_t, int32_t, double, double, double, double, int32_t, ConstantParameter output_size) -> Column<double> x, Column<double> y, Column<int32_t> num_iterations
67 */
68 // clang-format on
69 
71 int32_t tf_mandelbrot_cuda__gpu_(const int32_t x_pixels,
72  const int32_t y_pixels,
73  const double x_min,
74  const double x_max,
75  const double y_min,
76  const double y_max,
77  const int32_t max_iterations,
78  const int32_t output_size,
79  Column<double>& output_x,
80  Column<double>& output_y,
81  Column<int32_t>& output_num_iterations);
82 
83 // clang-format off
84 /*
85  UDTF: tf_mandelbrot_cuda_float__gpu_(int32_t, int32_t, float, float, float, float, int32_t, ConstantParameter output_size) -> Column<float> x, Column<float> y, Column<int32_t> num_iterations
86 */
87 // clang-format on
88 
90 int32_t tf_mandelbrot_cuda_float__gpu_(const int32_t x_pixels,
91  const int32_t y_pixels,
92  const float x_min,
93  const float x_max,
94  const float y_min,
95  const float y_max,
96  const int32_t max_iterations,
97  const int32_t output_size,
98  Column<float>& output_x,
99  Column<float>& output_y,
100  Column<int32_t>& output_num_iterations);
101 
102 #endif // __CUDACC__
103 #endif // HAVE_SYSTEM_TFS
#define EXTENSION_NOINLINE
Definition: OmniSciTypes.h:28