Change default
[clinton/Smoothieware.git] / src / modules / robot / Conveyor.h
index 6ecc8fd..936a750 100644 (file)
@@ -34,6 +34,7 @@ public:
 
     void wait_for_empty_queue();
     bool is_queue_empty() { return queue.is_empty(); };
+    bool is_queue_full() { return queue.is_full(); };
 
     void ensure_running(void);
 
@@ -43,20 +44,22 @@ public:
     void dump_queue(void);
     void flush_queue(void);
     bool is_flushing() const { return flush; }
-
+    float get_current_feedrate() const { return current_feedrate; }
     friend class Planner; // for queue
 
 private:
     typedef HeapRing<Block> Queue_t;
 
     Queue_t queue;  // Queue of Blocks
+    volatile unsigned int gc_pending;
+    float current_feedrate{0}; // actual nominal feedrate that current block is running at in mm/sec
 
     struct {
         volatile bool running:1;
         volatile bool flush:1;
+        volatile bool halted:1;
     };
 
-    volatile unsigned int gc_pending;
 };
 
 #endif // CONVEYOR_H