X-Git-Url: http://git.hcoop.net/clinton/Smoothieware.git/blobdiff_plain/40843ebc96ea01aa13439df14c05c7a9b6cbc822..922f169dba03c9f249a0746dbab0efde0ad10dc1:/src/libs/Kernel.h diff --git a/src/libs/Kernel.h b/src/libs/Kernel.h index 2aa06d24..d30f0ecd 100644 --- a/src/libs/Kernel.h +++ b/src/libs/Kernel.h @@ -9,6 +9,8 @@ #define KERNEL_H #define THEKERNEL Kernel::instance +#define THECONVEYOR THEKERNEL->conveyor +#define THEROBOT THEKERNEL->robot #include "Module.h" #include @@ -24,11 +26,12 @@ class SerialConsole; class StreamOutputPool; class GcodeDispatch; class Robot; -class Stepper; class Planner; class StepTicker; class Adc; class PublicData; +class SimpleShell; +class Configurator; class Kernel { public: @@ -40,11 +43,18 @@ class Kernel { void register_for_event(_EVENT_ENUM id_event, Module *module); void call_event(_EVENT_ENUM id_event, void * argument= nullptr); - bool kernel_has_event(_EVENT_ENUM id_event, Module *mod); + bool kernel_has_event(_EVENT_ENUM id_event, Module *module); void unregister_for_event(_EVENT_ENUM id_event, Module *module); bool is_using_leds() const { return use_leds; } bool is_halted() const { return halted; } + bool is_grbl_mode() const { return grbl_mode; } + bool is_ok_per_line() const { return ok_per_line; } + + void set_feed_hold(bool f) { feed_hold= f; } + bool get_feed_hold() const { return feed_hold; } + bool is_feed_hold_enabled() const { return enable_feed_hold; } + std::string get_query_string(); // These modules are available to all other modules @@ -52,18 +62,17 @@ class Kernel { StreamOutputPool* streams; GcodeDispatch* gcode_dispatch; Robot* robot; - Stepper* stepper; Planner* planner; Config* config; Conveyor* conveyor; + Configurator* configurator; + SimpleShell* simpleshell; - int debug; SlowTicker* slow_ticker; StepTicker* step_ticker; Adc* adc; std::string current_path; uint32_t base_stepping_frequency; - uint32_t acceleration_ticks_per_second; private: // When a module asks to be called for a specific event ( a hook ), this is where that request is remembered @@ -71,6 +80,10 @@ class Kernel { struct { bool use_leds:1; bool halted:1; + bool grbl_mode:1; + bool feed_hold:1; + bool ok_per_line:1; + bool enable_feed_hold:1; }; };