Rust-for-Arduboy/arduboy-rust/Wrapper-Project/src/library/arduboy/arduboy_export.h

211 lines
5.5 KiB
C
Raw Normal View History

#pragma once
#include <Arduboy2.h>
extern Arduboy2 arduboy;
extern "C"
{
void arduboy_begin(void)
{
arduboy.begin();
}
void arduboy_clear(void)
{
arduboy.clear();
}
void arduboy_display(void)
{
arduboy.display();
}
void arduboy_display_and_clear_buffer(void)
{
arduboy.display(CLEAR_BUFFER);
}
void arduboy_draw_fast_hline(int16_t x, int16_t y, uint8_t w, uint8_t color)
{
arduboy.drawFastHLine(x, y, w, color);
}
void arduboy_draw_fast_vline(int16_t x, int16_t y, uint8_t h, uint8_t color)
{
arduboy.drawFastVLine(x, y, h, color);
}
void arduboy_draw_pixel(int16_t x, int16_t y, uint8_t color)
{
arduboy.drawPixel(x, y, color);
}
void arduboy_draw_circle(int16_t x, int16_t y, uint8_t r, uint8_t color)
{
arduboy.drawCircle(x, y, r, color);
}
void arduboy_fill_circle(int16_t x, int16_t y, uint8_t r, uint8_t color)
{
arduboy.fillCircle(x, y, r, color);
}
void arduboy_fill_rect(int16_t x, int16_t y, uint8_t w, uint8_t h, uint8_t color)
{
arduboy.fillRect(x, y, w, h, color);
}
void arduboy_draw_rect(int16_t x, int16_t y, uint8_t w, uint8_t h, uint8_t color)
{
arduboy.drawRect(x, y, w, h, color);
}
void arduboy_fill_round_rect(int16_t x, int16_t y, uint8_t w, uint8_t h, uint8_t r, uint8_t color)
{
arduboy.fillRoundRect(x, y, w, h, r, color);
}
void arduboy_draw_round_rect(int16_t x, int16_t y, uint8_t w, uint8_t h, uint8_t r, uint8_t color)
{
arduboy.drawRoundRect(x, y, w, h, r, color);
}
void arduboy_fill_triangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint8_t color)
{
arduboy.fillTriangle(x0, y0, x1, y1, x2, y2, color);
}
void arduboy_draw_triangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint8_t color)
{
arduboy.drawTriangle(x0, y0, x1, y1, x2, y2, color);
}
bool arduboy_every_x_frames(uint8_t frames)
{
return arduboy.everyXFrames(frames);
}
void arduboy_flip_horizontal(bool flipped)
{
arduboy.flipHorizontal(flipped);
}
void arduboy_flip_vertical(bool flipped)
{
arduboy.flipVertical(flipped);
}
void arduboy_set_text_color(uint8_t color)
{
arduboy.setTextColor(color);
}
void arduboy_set_text_background_color(uint8_t color)
{
arduboy.setTextBackground(color);
}
void arduboy_set_cursor_x(int16_t x)
{
arduboy.setCursorX(x);
}
void arduboy_set_cursor_y(int16_t y)
{
arduboy.setCursorY(y);
}
void arduboy_set_text_wrap(bool w)
{
arduboy.setTextWrap(w);
}
void arduboy_idle()
{
arduboy.idle();
}
unsigned long arduboy_generate_random_seed()
{
return arduboy.generateRandomSeed();
}
uint8_t arduboy_get_pixel(uint8_t x, uint8_t y)
{
return arduboy.getPixel(x, y);
}
void arduboy_init_random_seed(void)
{
arduboy.initRandomSeed();
}
bool arduboy_just_pressed(uint8_t button)
{
return arduboy.justPressed(button);
}
bool arduboy_just_released(uint8_t button)
{
return arduboy.justReleased(button);
}
bool arduboy_next_frame(void)
{
return arduboy.nextFrame();
}
void arduboy_poll_buttons()
{
arduboy.pollButtons();
}
bool arduboy_pressed(uint8_t buttons)
{
return arduboy.pressed(buttons);
}
void arduboy_print_chars(const char *cstr)
{
arduboy.print(cstr);
}
size_t arduboy_print_chars_progmem(const char *cstr)
{
return arduboy.print(reinterpret_cast<const __FlashStringHelper *>(cstr));
}
size_t arduboy_print_char(char c)
{
return arduboy.print(c);
}
size_t arduboy_print_int(int n, int base)
{
return arduboy.print(n, base);
}
size_t arduboy_print_long(long n, int base)
{
return arduboy.print(n, base);
}
size_t arduboy_print_unsigned_char(unsigned char n, int base)
{
return arduboy.print(n, base);
}
size_t arduboy_print_unsigned_int(unsigned int n, int base)
{
return arduboy.print(n, base);
}
size_t arduboy_print_unsigned_long(unsigned long n, int base)
{
return arduboy.print(n, base);
}
void arduboy_set_cursor(int16_t x, int16_t y)
{
arduboy.setCursor(x, y);
}
void arduboy_set_frame_rate(uint8_t rate)
{
arduboy.setFrameRate(rate);
}
bool arduboy_not_pressed(uint8_t button)
{
arduboy.notPressed(button);
}
void arduboy_set_text_size(uint8_t s)
{
arduboy.setTextSize(s);
}
void arduboy_invert(bool inverse)
{
arduboy.invert(inverse);
}
void arduboy_digital_write_rgb_single(uint8_t color, uint8_t val)
{
arduboy.digitalWriteRGB(color, val);
}
void arduboy_digital_write_rgb(uint8_t red, uint8_t green, uint8_t blue)
{
arduboy.digitalWriteRGB(red, green, blue);
}
2023-09-12 17:25:17 +01:00
void arduboy_set_rgb_led_single(uint8_t color, uint8_t val)
{
arduboy.setRGBled(color, val);
}
2023-09-09 18:08:01 +01:00
void arduboy_set_rgb_led(uint8_t red, uint8_t green, uint8_t blue)
{
arduboy.setRGBled(red, green, blue);
}
2023-10-09 08:25:48 +02:00
uint8_t arduboy_buttons_state()
{
return arduboy.buttonsState();
}
void arduboy_exit_to_bootloader()
{
arduboy.exitToBootloader();
}
}