Am 29.11.2017 um 09:27 schrieb Stéphane Letz:
Thanks Hermann.
Although we know the work done for the guitar project, we do not (in general…)
recommend hacking the generated C++ code. The reason is that since the compiler
class output shape may change.., this method can be quite « fragile ».
Hi Stéphane
Yes, I know how fragile it could be, as we use this method now several
years. In this time we need to upgrade our script several times to
follow the faust development.
I've just ported guitarix from faust 0.9.73 to the latest faust 0.9.90
which requires 2 days.
But most time I spend on the faust sources to port them to the new
library architecture.
The transforming of our dsp2cc script was just a few lines to cover the
compiler output.
As next I'll check out how it works with faust2.
Surely it could be possible to subclass it, just we are used to use our
parser and in the meantime this structure is deep bounded into our sources.
regards
hermann
Our experience developing architecture files over the years, is that using the
standard « subclassing » or « object aggregatiion » methods as described in
the « Developing a new architecture file » section of the documentation
(faust-quick-reference.pdf) is usually sufficient in 99% of use-cases.
And if more modern C++ aggregation techniques based on template, or whatever,
are used by some projects, we would be happy to complement the « Developing a
new architecture file » section with an extended description.
Stéphane
Le 29 nov. 2017 à 07:05, Hermann Meyer <brumm...@web.de> a écrit :
Hi
In the guitarix project we using a python script with included templates to
parse the output of the faust compiler.
This allow us to replace the virtual keywords, in-lining some stuff, and format
the classes to the way we need in our project.
For reference here you'll find our dsp2cc script:
https://sourceforge.net/p/guitarix/git/ci/master/tree/trunk/tools/dsp2cc
We use it as well to implement our own UI descriptors and implement
oversampling.
regards
hermann
Am 27.11.2017 um 19:04 schrieb stijn .:
Hi all,
A slightly more deep question this time..
In my use case I would like to embed faust code within my own node-based modular DSP
system. Therefore I would like to composite a faust-generated dsp class within my own
Node class. In that case I would use a templated Node<MyFaustDSPClass> that
would call MyFaustDSPClass's methods to compute it's output. Then it would not be
desirable for MyFauseDSPClass to have any base class or virtual methods though,
because no polymorphism is used I would only loose the extra CPU cost of the virtual
method calls.
Is there a way to disable the "virtual" keyword in faust's output?
Thanks a lot,
Stijn.
--
Stijn van Beek
e-mail: stijn.v.b...@gmail.com <mailto:stijn.v.b...@gmail.com>
tel.: ++31-6-22316389
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Faudiostream-devel mailing list
Faudiostream-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-devel