mightymandel v16

GPU-based Mandelbrot set explorer

interact.h File Reference

(v16)

#include <stdbool.h>
#include <mpfr.h>
+ Include dependency graph for interact.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  interact

Enumerations

enum  key {
  k_quit,
  k_show_glitches,
  k_zoom_in,
  k_zoom_out,
  k_save_screenshot,
  k_weight_0,
  k_weight_1,
  k_weight_2,
  k_weight_3,
  k_weight_4,
  k_weight_5,
  k_weight_6,
  k_weight_7,
  k_weight_8,
  k_weight_9,
  k_left,
  k_right,
  k_up,
  k_down
}
enum  button {
  b_left,
  b_right,
  b_middle,
  b_up,
  b_down
}

Functions

void interact_begin (int w, int h, const mpfr_t cx, const mpfr_t cy, const mpfr_t r, double weight, bool show_glitches)
void interact_end (void)
void interact_reset (void)
void interact_mouse (button button, double x, double y, bool shift, bool ctrl)
void interact_keyboard (key key, bool shift, bool ctrl)

Variables

struct interact interact

Data Structure Documentation

struct interact

Definition at line 11 of file interact.h.

Data Fields
mpfr_t centerx
mpfr_t centery
int height
bool quit
mpfr_t radius
bool save_screenshot
bool show_glitches
bool updated
double weight
int width

Enumeration Type Documentation

enum button
Enumerator:
b_left 
b_right 
b_middle 
b_up 
b_down 

Definition at line 33 of file interact.h.

enum key
Enumerator:
k_quit 
k_show_glitches 
k_zoom_in 
k_zoom_out 
k_save_screenshot 
k_weight_0 
k_weight_1 
k_weight_2 
k_weight_3 
k_weight_4 
k_weight_5 
k_weight_6 
k_weight_7 
k_weight_8 
k_weight_9 
k_left 
k_right 
k_up 
k_down 

Definition at line 24 of file interact.h.

Function Documentation

void interact_begin ( int  w,
int  h,
const mpfr_t  cx,
const mpfr_t  cy,
const mpfr_t  r,
double  weight,
bool  show_glitches 
)

Definition at line 12 of file interact.c.

References interact::centerx, interact::centery, interact::height, interact::radius, interact::show_glitches, interact::weight, and interact::width.

Referenced by main().

+ Here is the caller graph for this function:

void interact_end ( void  )

Definition at line 26 of file interact.c.

References interact::centerx, interact::centery, and interact::radius.

Referenced by main().

+ Here is the caller graph for this function:

void interact_keyboard ( key  key,
bool  shift,
bool  ctrl 
)

Definition at line 97 of file interact.c.

References interact_translate(), interact_zoom(), k_down, k_left, k_quit, k_right, k_save_screenshot, k_show_glitches, k_up, k_weight_0, k_weight_1, k_weight_2, k_weight_3, k_weight_4, k_weight_5, k_weight_6, k_weight_7, k_weight_8, k_weight_9, k_zoom_in, k_zoom_out, log_message, LOG_NOTICE, interact::quit, interact::save_screenshot, interact::show_glitches, and interact::weight.

Referenced by key_press_handler().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void interact_mouse ( button  button,
double  x,
double  y,
bool  shift,
bool  ctrl 
)

Definition at line 85 of file interact.c.

References b_down, b_left, b_middle, b_right, b_up, interact_center(), interact_coord(), and interact_zoom_about().

Referenced by button_handler(), and scroll_handler().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void interact_reset ( void  )

Definition at line 32 of file interact.c.

References interact::quit, interact::save_screenshot, and interact::updated.

Referenced by poll_ui().

+ Here is the caller graph for this function:

Variable Documentation

Definition at line 35 of file interact.h.