This is the firmware for the LaOS - Laser Open Source project. You can use it to drive a laser cutter. For hardware and more information, look at our wiki: http://wiki.laoslaser.org
Dependencies: EthernetNetIf mbed
Diff: LaosMenu/LaosMenu.h
- Revision:
- 0:3852426a5068
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LaosMenu/LaosMenu.h Fri Jun 08 09:26:40 2012 +0000 @@ -0,0 +1,83 @@ +/** + * LaosMenu.h + * Simple menu system + * + * Copyright (c) 2011 Peter Brier & Jaap Vermaas + * + * This file is part of the LaOS project (see: http://wiki.laoslaser.org/) + * + * LaOS 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. + * + * LaOS 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. + * + * You should have received a copy of the GNU General Public License + * along with LaOS. If not, see <http://www.gnu.org/licenses/>. + * + * + @code + --code-- + @endcode + */ +#ifndef _LAOSMENU_H_ +#define _LAOSMENU_H_ + +#include "global.h" +#include "LaosDisplay.h" +#include "laosfilesystem.h" +extern "C" void mbed_reset(); + + /** Menu system + * Create server based on config file. + * + * Example: + * @code + * LaosMenu menu(); + * menu.Handle(); + * @endcode + */ + +extern void plan_get_current_position_xyz(float *x, float *y, float *z); + +class LaosMenu { +public: + /** Make new LaosMenu object. + */ + LaosMenu(LaosDisplay *display); + ~LaosMenu(); + +/** Handle the menu system + * Reads inputs, displays screen + */ + void Handle(); + void SetScreen(int screen); + void SetScreen(char *s); + void SetFileName(char * name); + +private: + // LaosDisplay *display; + int args[5]; + unsigned char waitup, timeout; + char *sarg; + int speed; + char jobname[MAXFILESIZE]; + + // menu states + int screen, prevscreen, lastscreen; + unsigned char menu, ipfield, iofield; + unsigned char powerfield, power[4]; + LaosDisplay *dsp; + int x,y,z; + int xoff, yoff, zoff; + FILE *runfile; + +}; + + + +#endif