diff options
| author | JP Appel <jeanpierre.appel01@gmail.com> | 2024-04-26 01:07:10 -0400 |
|---|---|---|
| committer | JP Appel <jeanpierre.appel01@gmail.com> | 2024-04-26 01:07:10 -0400 |
| commit | 033863ab3d37574441183f65664d0c72ab2707be (patch) | |
| tree | 0efc429873fdf8b6aeff5d78d711cf8702892e96 /src/fractals.h | |
| parent | a3862f8d92d9476eab29b0c4f74e1f1e8de92520 (diff) | |
first pass at cuda implementation
Diffstat (limited to 'src/fractals.h')
| -rw-r--r-- | src/fractals.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/fractals.h b/src/fractals.h index 611e4e6..1c745d9 100644 --- a/src/fractals.h +++ b/src/fractals.h @@ -1,8 +1,9 @@ #pragma once +#ifndef __NVCC__ #include <complex.h> -#include <stddef.h> -#include <stdint.h> +#endif + #include "grids.h" #include "precision.h" @@ -16,20 +17,24 @@ typedef union { typedef void (*fractal_generator)(grid_t* , const grid_gen_params* ); +#ifndef __NVCC__ size_t mandelbrot(const CBASE complex z0, const size_t max_iterations); -void mandelbrot_grid(grid_t* grid, const grid_gen_params* params); - size_t tricorn(const CBASE complex z0, const size_t max_iterations); -void tricorn_grid(grid_t* grid, const grid_gen_params* params); - size_t burning_ship(const CBASE complex z0, const size_t max_iterations); -void burning_ship_grid(grid_t* grid, const grid_gen_params* params); - size_t multibrot(const CBASE complex z0, const size_t max_iterations, const double d); -void multibrot_grid(grid_t* grid, const grid_gen_params* params); - size_t multicorn(const CBASE complex z0, const size_t max_iterations, const double d); -void multicorn_grid(grid_t* grid, const grid_gen_params* params); - size_t julia(const CBASE complex z0, const CBASE complex c, const size_t max_iterations, const double R); +#endif + +#ifdef __cplusplus +extern "C" { +#endif +void mandelbrot_grid(grid_t* grid, const grid_gen_params* params); +void tricorn_grid(grid_t* grid, const grid_gen_params* params); +void burning_ship_grid(grid_t* grid, const grid_gen_params* params); +void multibrot_grid(grid_t* grid, const grid_gen_params* params); +void multicorn_grid(grid_t* grid, const grid_gen_params* params); void julia_grid(grid_t* grid, const grid_gen_params* params); +#ifdef __cplusplus +} +#endif |
