1 # gaf - Python library for manipulating gEDA files
2 # Copyright (C) 1998-2010 Ales Hvezda
3 # Copyright (C) 1998-2010 gEDA Contributors (see ChangeLog for details)
4 # Copyright (C) 2013-2020 Roland Lutz
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software Foundation,
18 # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20 ## \namespace gaf.fileformat
25 FORMAT_SCH
, FORMAT_SYM
, FORMAT_SCH_XML
, FORMAT_SYM_XML
= xrange(4)
30 'schxml': FORMAT_SCH_XML
,
31 'symxml': FORMAT_SYM_XML
34 ## Raised when the format of a file isn't specified and can't be
35 ## guessed from the file name.
37 class UnknownFormatError(Exception):
40 def guess_format(path
):
41 basename
= os
.path
.basename(path
).lower()
42 if basename
.endswith('.sch'):
44 if basename
.endswith('.sym'):
46 if basename
.endswith('.sch.xml'):
48 if basename
.endswith('.sym.xml'):
50 raise UnknownFormatError