Fork of Smoothie to port to mbed non-LPC targets.
Fork of Smoothie by
Gcode.h
00001 /* 00002 This file is part of Smoothie (http://smoothieware.org/). The motion control part is heavily based on Grbl (https://github.com/simen/grbl). 00003 Smoothie is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. 00004 Smoothie is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 00005 You should have received a copy of the GNU General Public License along with Smoothie. If not, see <http://www.gnu.org/licenses/>. 00006 */ 00007 00008 00009 #ifndef GCODE_H 00010 #define GCODE_H 00011 #include <string> 00012 using std::string; 00013 #include "libs/StreamOutput.h" 00014 // Object to represent a Gcode command 00015 #include <stdlib.h> 00016 00017 class Gcode { 00018 public: 00019 Gcode(const string&, StreamOutput*); 00020 Gcode(const Gcode& to_copy); 00021 Gcode& operator= (const Gcode& to_copy); 00022 00023 bool has_letter ( char letter ); 00024 00025 float get_value ( char letter ); 00026 00027 float get_double ( char letter ); 00028 int get_int ( char letter ); 00029 00030 int get_num_args(); 00031 void prepare_cached_values(); 00032 void mark_as_taken(); 00033 00034 string command; 00035 float millimeters_of_travel; 00036 00037 bool has_m; 00038 bool has_g; 00039 unsigned int m; 00040 unsigned int g; 00041 00042 bool add_nl; 00043 StreamOutput* stream; 00044 00045 string txt_after_ok; 00046 bool accepted_by_module; 00047 00048 }; 00049 #endif
Generated on Tue Jul 12 2022 20:09:01 by 1.7.2