WebRadioApp  0.1
Collaboration diagram for EWMAIN:

Modules

 EWMAIN_helper_functions
 

Macros

#define CHECK_HANDLE(handle)
 
#define TOOLCHAIN_STRING   "unknown"
 
#define VECTOR_GRAPHICS_SUPPORT_STRING   "enabled"
 
#define WARP_FUNCTION_SUPPORT_STRING   "enabled"
 
#define INDEX8_SURFACE_SUPPORT_STRING   "enabled"
 
#define RGB565_SURFACE_SUPPORT_STRING   "enabled"
 
#define BIDI_TEXT_SUPPORT_STRING   "enabled"
 
#define GRAPHICS_ACCELERATOR_STRING   "none"
 
#define OPERATING_SYSTEM_STRING   "none"
 
#define EXTERNAL_FLASH_STRING   "none"
 

Functions

int EwInit (void)
 EwInit() is responsible to initialize the system, to configure the display, to get access to the desired input devices (like keyboard or touch), to initialize the Embedded Wizard Runtime Environment / Graphics Engine, to create an instance of the application class and to initialize all needed peripheral components. More...
 
void EwDone (void)
 EwDone() is responsible to shutdown the application and to release all used resources. More...
 
int EwProcess (void)
 EwProcess() implements one cycle of the main loop. This function has to be called in an (endless) loop and contains typically the following steps: More...
 
void EwPrintSystemInfo (void)
 This function prints system and configuration information - very helpful in case of any support issues. More...
 

Variables

static CoreRoot RootObject
 
static XViewportViewport
 
static XDisplayInfo DisplayInfo
 

Helper Functions

helper functions used within this module

static void EwUpdate (XViewport *aViewport, CoreRoot aApplication)
 The function EwUpdate performs the screen update of the dirty area. More...
 
static XEnum EwGetKeyCommand (void)
 The function EwGetKeyCommand reads the next key code from the console and translates it into an Embedded Wizard key code. The mapping between the key code from the console and the resulting Embedded Wizard key code can be adapted to the needs of your application. More...
 

Detailed Description

Macro Definition Documentation

◆ BIDI_TEXT_SUPPORT_STRING

#define BIDI_TEXT_SUPPORT_STRING   "enabled"

◆ CHECK_HANDLE

#define CHECK_HANDLE (   handle)
Value:
if (!handle) { \
EwPrint("[failed]\n"); \
return 0; \
EwPrint("[OK]\n");

◆ EXTERNAL_FLASH_STRING

#define EXTERNAL_FLASH_STRING   "none"

◆ GRAPHICS_ACCELERATOR_STRING

#define GRAPHICS_ACCELERATOR_STRING   "none"

◆ INDEX8_SURFACE_SUPPORT_STRING

#define INDEX8_SURFACE_SUPPORT_STRING   "enabled"

◆ OPERATING_SYSTEM_STRING

#define OPERATING_SYSTEM_STRING   "none"

◆ RGB565_SURFACE_SUPPORT_STRING

#define RGB565_SURFACE_SUPPORT_STRING   "enabled"

◆ TOOLCHAIN_STRING

#define TOOLCHAIN_STRING   "unknown"

◆ VECTOR_GRAPHICS_SUPPORT_STRING

#define VECTOR_GRAPHICS_SUPPORT_STRING   "enabled"

◆ WARP_FUNCTION_SUPPORT_STRING

#define WARP_FUNCTION_SUPPORT_STRING   "enabled"

Function Documentation

◆ EwDone()

void EwDone ( void  )

EwDone() is responsible to shutdown the application and to release all used resources.


References DeviceDriver_Deinitialize(), EwBspDisplayDone(), EwBspTouchDone(), EwDoneGraphicsEngine(), EwDoneHeap(), EwDoneViewport(), EwPrint(), EwReclaimMemory(), EwUnlockObject(), RootObject, and Viewport.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EwGetKeyCommand()

static XEnum EwGetKeyCommand ( void  )
static

The function EwGetKeyCommand reads the next key code from the console and translates it into an Embedded Wizard key code. The mapping between the key code from the console and the resulting Embedded Wizard key code can be adapted to the needs of your application.

Returns
XEnum - Returns the next EmWi key code or CoreKeyCodeNoKey if no key code available

References CoreKeyCodeDown, CoreKeyCodeExit, CoreKeyCodeLeft, CoreKeyCodeMenu, CoreKeyCodeNoKey, CoreKeyCodeOk, CoreKeyCodePower, CoreKeyCodeRight, CoreKeyCodeUp, EwBspConsoleGetCharacter(), and EwPrint().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EwInit()

int EwInit ( void  )

EwInit() is responsible to initialize the system, to configure the display, to get access to the desired input devices (like keyboard or touch), to initialize the Embedded Wizard Runtime Environment / Graphics Engine, to create an instance of the application class and to initialize all needed peripheral components.

Returns
int - 1 if successful, 0 otherwise.

References XDisplayInfo::BufferHeight, XDisplayInfo::BufferWidth, CHECK_HANDLE, CoreRoot__Initialize(), DeviceDriver_Initialize(), XDisplayInfo::DisplayHeight, DisplayInfo, XDisplayInfo::DisplayWidth, XDisplayInfo::DoubleBuffer, EW_EXTRA_POOL_ADDR, EW_EXTRA_POOL_SIZE, EW_MEMORY_POOL_ADDR, EW_MEMORY_POOL_SIZE, EwAddHeapMemoryPool(), EwApplicationClass, EwBspClockGetTime(), EwBspClockInit(), EwBspClockSetTime(), EwBspDisplayInit(), EwBspTouchInit(), EwInitGraphicsEngine(), EwInitHeap(), EwInitViewport(), EwLockObject(), EwNewObjectIndirect(), EwNewRect(), EwPrint(), EwScreenSize, XDisplayInfo::FrameBuffer, RootObject, RTC_DEFAULT_TIME, RTC_MINIMUM_TIME, and Viewport.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EwPrintSystemInfo()

void EwPrintSystemInfo ( void  )

This function prints system and configuration information - very helpful in case of any support issues.


References BIDI_TEXT_SUPPORT_STRING, XDisplayInfo::BufferHeight, XDisplayInfo::BufferWidth, DisplayInfo, XDisplayInfo::DoubleBuffer, EW_EXTRA_POOL_ADDR, EW_EXTRA_POOL_SIZE, EW_GFX_VERSION, EW_MAX_GLYPH_SURFACE_HEIGHT, EW_MAX_GLYPH_SURFACE_WIDTH, EW_MAX_ISSUE_TASKS, EW_MAX_SURFACE_CACHE_SIZE, EW_MEMORY_POOL_ADDR, EW_MEMORY_POOL_SIZE, EW_RTE_VERSION, EW_STRINGIZE, EW_SURFACE_ROTATION, EwPrint(), EwScreenSize, EXTERNAL_FLASH_STRING, XDisplayInfo::FrameBuffer, GRAPHICS_ACCELERATOR_STRING, INDEX8_SURFACE_SUPPORT_STRING, OPERATING_SYSTEM_STRING, PLATFORM_STRING, RGB565_SURFACE_SUPPORT_STRING, TOOLCHAIN_STRING, VECTOR_GRAPHICS_SUPPORT_STRING, WARP_FUNCTION_SUPPORT_STRING, XPoint::X, and XPoint::Y.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EwProcess()

int EwProcess ( void  )

EwProcess() implements one cycle of the main loop. This function has to be called in an (endless) loop and contains typically the following steps:

  1. Processing data from your device driver(s)
  2. Processing key events
  3. Processing cursor or touch screen events
  4. Processing timers
  5. Processing signals
  6. Updating the screen
  7. Triggering the garbage collection For more information concerning the integration of an Embedded Wizard generated GUI application into your main application, please see https://doc.embedded-wizard.de/main-loop
Returns
int - 1, if further processing is needed, 0 otherwise.

References CoreKeyCodeNoKey, CoreKeyCodePower, CoreRoot__DoesNeedUpdate(), CoreRoot__DriveKeyboardHitting(), CoreRoot__DriveMultiTouchHitting(), CoreRoot__DriveMultiTouchMovement(), DeviceDriver_ProcessData(), EW_BSP_TOUCH_DOWN, EW_BSP_TOUCH_MOVE, EW_BSP_TOUCH_UP, EwBspEventWait(), EwBspTouchGetEvents(), EwDumpHeap(), EwGetKeyCommand(), EwNextTimerExpiration(), EwPrintProfilerStatistic(), EwProcessSignals(), EwProcessTimers(), EwReclaimMemory(), EwUpdate(), EwVerifyHeap(), XTouchEvent::Finger, RootObject, Viewport, XPoint::X, XTouchEvent::XPos, XPoint::Y, and XTouchEvent::YPos.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EwUpdate()

static void EwUpdate ( XViewport aViewport,
CoreRoot  aApplication 
)
static

The function EwUpdate performs the screen update of the dirty area.

Parameters
aViewportViewport used for the screen update.
aApplicationRoot object used for the screen update.

References CoreRoot__BeginUpdate(), CoreRoot__EndUpdate(), CoreRoot__GetUpdateRegion(), CoreRoot__UpdateCanvas(), CoreRoot__UpdateGE20(), DisplayInfo, EW_BSP_DISPLAY_UPDATE_NORMAL, EW_BSP_DISPLAY_UPDATE_SCRATCHPAD, EwBeginUpdate(), EwBeginUpdateArea(), EwBspDisplayGetUpdateArea(), EwEndUpdate(), EwNewObject, GraphicsCanvas__AttachBitmap(), GraphicsCanvas__DetachBitmap(), XRect::Point1, and XDisplayInfo::UpdateMode.

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ DisplayInfo

XDisplayInfo DisplayInfo
static

◆ RootObject

CoreRoot RootObject
static

◆ Viewport

XViewport* Viewport
static
EwPrint
void EwPrint(const char *aFormat,...)