Hi,
I would like to know if there are any Pd objects out there written in C++...
thanks in advance, josé
PS: It would be nice to have a C++ version of the examples that are in the externals howto... (http://pdstatic.iem.at/externals-HOWTO/HOWTO-externals-en.html).
Hey José,
Check out Flext
On Wed, 11 Aug 2010 17:32:30 -0300 padovani zepadovani.lists@gmail.com wrote:
Hi,
I would like to know if there are any Pd objects out there written in C++...
thanks in advance, josé
PS: It would be nice to have a C++ version of the examples that are in the externals howto... (http://pdstatic.iem.at/externals-HOWTO/HOWTO-externals-en.html).
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
GEM is C++
On Wed, Aug 11, 2010 at 4:32 PM, padovani zepadovani.lists@gmail.comwrote:
Hi,
I would like to know if there are any Pd objects out there written in C++...
thanks in advance, josé
PS: It would be nice to have a C++ version of the examples that are in the externals howto... ( http://pdstatic.iem.at/externals-HOWTO/HOWTO-externals-en.html).
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
On Wed, 11 Aug 2010, padovani wrote:
I would like to know if there are any Pd objects out there written in C++...
There are three C++ interfaces to Pd that are currently in use :
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard, Montréal, Québec. téléphone: +1.514.383.3801
On 2010-08-11 22:57, Mathieu Bouchard wrote:
On Wed, 11 Aug 2010, padovani wrote:
I would like to know if there are any Pd objects out there written in C++...
There are three C++ interfaces to Pd that are currently in use :
- GridFlow's
- GEM's
- Flext
there are more. e.g. georg holzmann's "PDContainer" (externals/grh/PDContainer) is written in C++ (it's a wrapper around the C++ STL) and uses it's own interface.
georg's interface has no dependencies (apart from c++ and pd), whereas flext, gem and gf need to be installed if you use them (unless you are just cloning the code)
gmasdr IOhannes
On Thu, 12 Aug 2010, IOhannes m zmoelnig wrote:
On 2010-08-11 22:57, Mathieu Bouchard wrote:
On Wed, 11 Aug 2010, padovani wrote:
I would like to know if there are any Pd objects out there written in C++...
There are three C++ interfaces to Pd that are currently in use :
- GridFlow's
- GEM's
- Flext
there are more.
I mean generic interfacing tools that make the pd interface more "native" to C++. For example, the three above have some system that allows to use inheritance and virtual functions (?). But some make more steps to hide some long C boilerplate code. For example, GF has a preprocessor that allows the C++ code to just get to the point, as all the class_addmethod stuff is automated, and even simple data conversions are :
\decl 2 symbol (string a) {your code goes here}
automatically sets a = std::string($1->s_name); and takes care of registering the method name 'symbol' in inlet 2.
e.g. georg holzmann's "PDContainer" (externals/grh/PDContainer) is written in C++ (it's a wrapper around the C++ STL) and uses it's own interface. georg's interface has no dependencies (apart from c++ and pd), whereas flext, gem and gf need to be installed if you use them (unless you are just cloning the code)
You mean every C++ thing is wrapped using custom plain C code written for each separate occasion, no macros, no shortcuts, no actual framework for generalising the use of C++ features in relationship with pd. IMHO, it just uses <m_pd.h> and nothing else. That's why it has "no dependencies".
But ok, that was not the original question. Well, if you are just looking for something that is compiled as C++, there is tclpd, pix_opencv, pdp_opencv, ... but they hardly use any C++ features at all. Then there are C externals that use a bit of C++, such as pdoctave, and then there are externals made with Flext, such as msd and sc4pd.
To find an exhaustive list of them in the pd svn, it's probably sufficient to do :
find externals -iname '*.cpp' -o -iname '*.cc' -o -iname '*.cxx'
and then sort out those that really use C++, from those that use essentially C plus one C++ feature out of 1000.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard, Montréal, Québec. téléphone: +1.514.383.3801
Hi,
I would like to know if there are any Pd objects out there written in
C++...thanks in advance, josé
PS: It would be nice to have a C++ version of the examples that are in
the externals howto...
(http://pdstatic.iem.at/externals-HOWTO/HOWTO-externals-en.html).
I think there are quite a few written in C++.
AFAIK, you only need to take care about how you declare the setup function. There may be other C++ -> C issues that I don't know about. But, in my externals, this one issue is the only thing I can recall.
For example, the helloworld c code here:
http://pdstatic.iem.at/externals-HOWTO/node3.html#SECTION0003600000000000000...
in C: void helloworld_setup(void)
in C++: extern "C" void helloworld_setup(void)
-august.