/*
 GerberConversion
 Copyright (C) 2010 Martin Štrympl
 
 This program 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.0 of the License, or (at your option) any later version.
 
 This program 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 this program.
 
 Martin Štrympl
 xstrym00@stud.feec.vutbr.cz
 */

#ifndef GCODES_H_INCLUDED
#define GCODES_H_INCLUDED

#include "Headers.h"

struct sGerber_Gerber;
struct sGerber_Gerber_Actual;

struct sGerber_Point;

typedef int (*fGcode_Gcodes_Gcode)(struct sGerber_Gerber *ps_gerber, struct sGerber_Gerber_Actual *ps_actual);

#define Mac_Head_Gcode_Gcodes_Gcode struct sGerber_Gerber *ps_gerber, struct sGerber_Gerber_Actual *ps_actual

#define Mac_Fun_Gcode_Gcodes_Gcode(name) int name(Mac_Head_Gcode_Gcodes_Gcode)

//know G codes
Mac_Fun_Gcode_Gcodes_Gcode(Gcode_01);
Mac_Fun_Gcode_Gcodes_Gcode(Gcode_02);
Mac_Fun_Gcode_Gcodes_Gcode(Gcode_03);

#endif //GCODES_H_INCLUDED
