delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/03/25/11:47:44

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Wed, 25 Mar 2015 16:46:20 +0100 (CET)
X-X-Sender: igor2 AT igor2priv
To: geda-user AT delorie DOT com
X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu"
From: gedau AT igor2 DOT repo DOT hu
Subject: Re: [geda-user] Export filters
In-Reply-To: <CAGYR9vcjq9DRWkZ2xJDUmUhUeUyvy4OfTsiYeeYtaLMiEqiHbw@mail.gmail.com>
Message-ID: <alpine.DEB.2.00.1503251639270.25799@igor2priv>
References: <CAGYR9vcjq9DRWkZ2xJDUmUhUeUyvy4OfTsiYeeYtaLMiEqiHbw AT mail DOT gmail DOT com>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com


On Wed, 25 Mar 2015, Bernhard Kraft wrote:

> Hi,
>
> As there were some questions recently upon creating HPGL output or
> output for some 3D modelers a more general question: How are the
> export filters of PCB currently implemented. I mean the ones you can
> choose from File>Export layout: Gerber, PNG, PS, PDF, etc.
>
> Are those hardcoded into PCB or is there any way to add additional
> output filters without recompiling? Or is there some existing codebase
> for transforming .pcb files into another format?

They are plugins (maybe called exporter HIDs?).

The default exporters you listed have their source in the PCB source tree 
and are compiled into pcb.

It is (in theory) easy to ship your own plugin - I used to do this with 
pcb-gpmi. Others used to provide 3rd party plugins too. The user needs 
to have a PCB source and a compiler. In practice if the HID API or other 
major parts change in PCB, they tend to bitrot: the PCB developer who 
makes the change to PCB can not update random 3rd party plugins.

Again in theory, it wouldn't be hard to get PCB dynamically load the 
pugins (from .so files on UNIX), but I am unsure if it is supported at the 
moment. If not, it should be easy to write a plugin that can load other 
plugins that way. Last time I checked PCB did have -rdynamic on Linux 
which allows such .so loaded plugins to access PCB internals.

HTH,

Igor2

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019