![]() |
GM6000 Digital Heater Controller Build: 20 (Branch = develop)
SDX-1330
|
This file defines the hardware/platform independent start-up interface(s) for the Ajax application.
#include "Ajax/Ui/PicoDisplay.h"#include "colony_config.h"#include "Cpl/Io/Input.h"#include "Cpl/Io/Output.h"#include "Cpl/TShell/Command.h"#include "Ajax/ScreenMgr/Navigation.h"#include "Driver/NV/Api.h"#include "Driver/Crypto/Hash.h"#include "Driver/DIO/Pwm.h"#include "Driver/DIO/In.h"#include "Cpl/Dm/MailboxServer.h"Go to the source code of this file.
Namespaces | |
| namespace | Ajax |
| The 'Ajax' namespace is the root name space all GM6000 application specific source code. | |
| namespace | Ajax::Main |
| The 'Main' namespace contains the start-up and and shutdown business logic for the Ajax application. | |
Macros | |
| #define | OPTION_AJAX_MAIN_THREAD_PRIORITY_UI (CPL_SYSTEM_THREAD_PRIORITY_NORMAL + (CPL_SYSTEM_THREAD_PRIORITY_RAISE) ) |
| Thread priority. | |
| #define | OPTION_AJAX_MAIN_THREAD_PRIORITY_APPLICATION (CPL_SYSTEM_THREAD_PRIORITY_NORMAL) |
| Thread priority. | |
| #define | OPTION_AJAX_MAIN_THREAD_PRIORITY_STORAGE (CPL_SYSTEM_THREAD_PRIORITY_NORMAL + ( 2* CPL_SYSTEM_THREAD_PRIORITY_LOWER) ) |
| Thread priority. | |
| #define | OPTION_AJAX_MAIN_THREAD_PRIORITY_CONSOLE (CPL_SYSTEM_THREAD_PRIORITY_NORMAL + ( 3* CPL_SYSTEM_THREAD_PRIORITY_LOWER) ) |
| Thread priority. | |
| #define | OPTION_AJAX_MAIN_MIN_SPLASH_TIME_MS (2*1000) |
| Minimum amount of time (in milliseconds) the splash screen is displayed. | |
| #define | OPTION_AJAX_MAIN_MAX_LOGGING_BUFFER_ENTRIES 20 |
| Number of entries for the in-RAM logging buffer. | |
Functions | |
| int | Ajax::Main::runTheApplication (Cpl::Io::Input &infd, Cpl::Io::Output &outfd) |
| This method launches the start-up sequence, then runs the application, followed by the shutdown sequence. | |
Variables | |
| Cpl::Container::SList< Cpl::TShell::Command > | Ajax::Main::g_cmdlist |
| Expose the TShell command list to facilitate creating platform specific TShell commands. | |
| pimoroni::PicoGraphics_PenRGB332 | Ajax::Main::g_graphics |
| Expose the Graphic library (to faciliate static screen creation) | |
| Ajax::ScreenMgr::Navigation & | Ajax::Main::g_screenNav |
| Expose a handle to the global Screen Navigation instance. | |
| Driver::NV::Api & | Ajax::Main::g_nvramDriver |
| Expose the handle to the NV driver. | |
| Driver::Crypto::Hash * | Ajax::Main::g_sha512Ptr |
| Expose the Console hash function. | |
| Cpl::Dm::MailboxServer | Ajax::Main::g_appMbox |
| Expose the mailbox for the "application" thread (for Ajax this is the Algorithm thread) | |
| Cpl::Dm::MailboxServer | Ajax::Main::g_uiMbox |
| Expose the mailbox for the "UI" thread. | |
| Driver::DIO::Pwm | Ajax::Main::g_heaterPWMDriver |
| Expose the driver for the Heater PWM driver. | |
| Driver::DIO::Pwm | Ajax::Main::g_fanPWMDriver |
| Expose the driver for the Fan PWM driver. | |
| Driver::DIO::In | Ajax::Main::g_hwSafetyDriver |
| Expose the driver for the HW Safety Limit input driver. | |
| #define OPTION_AJAX_MAIN_MAX_LOGGING_BUFFER_ENTRIES 20 |
Number of entries for the in-RAM logging buffer.
| #define OPTION_AJAX_MAIN_MIN_SPLASH_TIME_MS (2*1000) |
Minimum amount of time (in milliseconds) the splash screen is displayed.
| #define OPTION_AJAX_MAIN_THREAD_PRIORITY_APPLICATION (CPL_SYSTEM_THREAD_PRIORITY_NORMAL) |
Thread priority.
| #define OPTION_AJAX_MAIN_THREAD_PRIORITY_CONSOLE (CPL_SYSTEM_THREAD_PRIORITY_NORMAL + ( 3* CPL_SYSTEM_THREAD_PRIORITY_LOWER) ) |
Thread priority.
| #define OPTION_AJAX_MAIN_THREAD_PRIORITY_STORAGE (CPL_SYSTEM_THREAD_PRIORITY_NORMAL + ( 2* CPL_SYSTEM_THREAD_PRIORITY_LOWER) ) |
Thread priority.
| #define OPTION_AJAX_MAIN_THREAD_PRIORITY_UI (CPL_SYSTEM_THREAD_PRIORITY_NORMAL + (CPL_SYSTEM_THREAD_PRIORITY_RAISE) ) |
Thread priority.