/* * Display.h * * Created: Sun Mar 21 2021 15:51:51 * Author Chris */ #ifndef DISPLAY_H_ #define DISPLAY_H_ // ============================================================================================ // Includes #include #include #include #include "Display_Config.h" #include "Display_Objects.h" #include "Easings.h" // ============================================================================================ // Defines // ============================================================================================ // Datatypes typedef struct { Screen_Transition_Direction Direction_Out; Screen_Transition_Direction Direction_In; Coordinates Offset; Easing Type; uint32_t Frame_Duration; uint32_t Step; int16_t Position_In; int16_t Position_Out; } Screen_Transition_Settings_t; // ============================================================================================ // Function Declarations void Display_Init(Display_Color initial_color, bool send_buffer, bool init_touch); void Display_Issue_Touch_Event(int16_t x_screen, int16_t y_screen); void Display_Set_Draw_Touch_Reference_Points(bool do_draw); void Display_Set_Draw_Center_Lines(bool do_draw); void Display_Screen_Transition_Start(Screen_Transition_Direction direction_out, Screen_Transition_Direction direction_in, Easing type, uint32_t frame_duration); void Display_Screen_Transition_Tick(); bool Display_Screen_Transition_Ongoing(); void Display_Render_Objects(void); void Display_Send_Buffer(void); bool Display_Send_Buffer_Completed(void); void Display_Show_Test_Screen(void); int Display_Get_Button_Touch_Return_Value(void); void Display_Select_First_Object(void); void Display_Action_CW(void); void Display_Action_CCW(void); void Display_Action_SW(void); void Display_Select_Object(void); void Display_Unselect_Object(void); void Display_Menu_Icon_Row_Set(uint32_t initially_selected_item, uint32_t icon_space_width); void Display_Inc_Frame_Counter(void); uint* Display_Get_Frame_Counter_Reference(void); Display_Color Display_Get_Pixel(uint32_t pixel_number); void Display_Set_Debug_Print(void); #endif /* DISPLAY_H_ */