gerbv
project.h
Go to the documentation of this file.
1 /*
2  * gEDA - GNU Electronic Design Automation
3  * This file is a part of gerbv.
4  *
5  * Copyright (C) 2000-2003 Stefan Petersen (spe@stacken.kth.se)
6  * Copyright (C) 2008 Dan McMahill
7  *
8  * $Id$
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA
23  */
24 
30 #ifndef PROJECT_H
31 #define PROJECT_H
32 
33 typedef struct project_list_t {
34  int layerno;
35  char *filename;
36  int rgb[3];
37  int alpha;
38  char inverted;
39  double translate_x;
40  double translate_y;
41  double rotation;
42  double scale_x;
43  double scale_y;
44  char mirror_x;
45  char mirror_y;
46  char is_pnp;
47  char visible;
48  gerbv_HID_Attribute *attr_list;
49  int n_attr;
50  struct project_list_t *next;
51 } project_list_t;
52 
53 
54 enum conv_type {
55  MINGW_UNIX = 0,
56  UNIX_MINGW = 1
57 };
58 
59 int project_is_gerbv_project(const char *filename, gboolean *ret);
60 
61 /*
62  * Reads a project from a file and returns a linked list describing the project
63  */
64 project_list_t *read_project_file(char const* filename);
65 
66 
67 /* Writes a description of a project to a file
68  * that can be parsed by read_project above */
69 int write_project_file(gerbv_project_t *gerbvProject, char const* filename, project_list_t *project);
70 
71 void
72 project_destroy_project_list (project_list_t *projectList);
73 #endif /* PROJECT_H */
project_list_t * read_project_file(char const *filename)
Reads the content of a project file.
Definition: project.c:944
int project_is_gerbv_project(const char *filename, gboolean *ret)
Checks whether the supplied file look like a gerbv project by reading the first line and checking if ...
Definition: project.c:906