Commit | Line | Data |
---|---|---|
14ecdbd7 AW |
1 | /* |
2 | this file is part of smoothie (http://smoothieware.org/). the motion control part is heavily based on grbl (https://github.com/simen/grbl). | |
3 | 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. | |
4 | 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. | |
5 | you should have received a copy of the gnu general public license along with smoothie. if not, see <http://www.gnu.org/licenses/>. | |
6 | */ | |
7 | ||
29e809e0 | 8 | #pragma once |
14ecdbd7 | 9 | |
17c89e4d | 10 | #include "Module.h" |
540c8365 | 11 | |
e0d0ea84 JM |
12 | #include <stdint.h> |
13 | ||
17c89e4d JM |
14 | class Tool : public Module |
15 | { | |
16 | public: | |
17 | Tool(){}; | |
18 | virtual ~Tool() {}; | |
19 | ||
13ad7234 JM |
20 | virtual void select()= 0; |
21 | virtual void deselect()= 0; | |
17c89e4d JM |
22 | virtual const float *get_offset() const { return offset; } |
23 | virtual uint16_t get_name() const { return identifier; } | |
24 | ||
25 | protected: | |
17c89e4d JM |
26 | float offset[3]; |
27 | uint16_t identifier; | |
14ecdbd7 AW |
28 | }; |
29 |