Csound Csound-dev Csound-tekno Search About

[Csnd-dev] GEN Plugin

Date2017-05-19 20:16
FromOscar Pablo Di Liscia
Subject[Csnd-dev] GEN Plugin
Hello List.
Simple question.
Is it possible to write Csound Plugins that create a new GEN routine?
If so...can anyone point at some code example if any?
Best
Pablo

--
Dr. Oscar Pablo Di Liscia
Profesor Titular
Director Programa de Investigación "Sistemas Temporales y Síntesis Espacial de Sonido en el Arte Sonoro"
Escuela Universitaria de Artes
Universidad Nacional de Quilmes
Argentina

Date2017-05-19 20:36
FromGuillermo Senna
SubjectRe: [Csnd-dev] GEN Plugin
Hi Pablo,

I've implemented this last year:
https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c

I used this as a model:
https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c

I'd love to know if there's a chance of developing them using C++. It's
so easy to develop with the new plugin.h header now!


On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
> Hello List.
> Simple question.
> Is it possible to write Csound Plugins that create a new GEN routine?
> If so...can anyone point at some code example if any?
> Best
> Pablo

Date2017-05-19 20:39
FromVictor Lazzarini
SubjectRe: [Csnd-dev] GEN Plugin
Not yet, but I will try to design it.

Victor Lazzarini
Dean of Arts, Celtic Studies, and Philosophy
Maynooth University
Ireland

> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
> 
> Hi Pablo,
> 
> I've implemented this last year:
> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
> 
> I used this as a model:
> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
> 
> I'd love to know if there's a chance of developing them using C++. It's
> so easy to develop with the new plugin.h header now!
> 
> 
>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>> Hello List.
>> Simple question.
>> Is it possible to write Csound Plugins that create a new GEN routine?
>> If so...can anyone point at some code example if any?
>> Best
>> Pablo

Date2017-05-19 20:46
FromGuillermo Senna
SubjectRe: [Csnd-dev] GEN Plugin
Great to hear that, Victor! There was something about a const interator
in that header that wasn't returning a real const, but I forgot to make
a note in the moment. I'll see if I can find it after I come back.


On 19/05/17 16:39, Victor Lazzarini wrote:
> Not yet, but I will try to design it.
>
> Victor Lazzarini
> Dean of Arts, Celtic Studies, and Philosophy
> Maynooth University
> Ireland
>
>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>
>> Hi Pablo,
>>
>> I've implemented this last year:
>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>
>> I used this as a model:
>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>
>> I'd love to know if there's a chance of developing them using C++. It's
>> so easy to develop with the new plugin.h header now!
>>
>>
>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>> Hello List.
>>> Simple question.
>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>> If so...can anyone point at some code example if any?
>>> Best
>>> Pablo

Date2017-05-19 22:03
FromVictor Lazzarini
SubjectRe: [Csnd-dev] GEN Plugin
Let me know and I will fix it.
========================
Prof. Victor Lazzarini
Dean of Arts, Celtic Studies, and Philosophy,
Maynooth University,
Maynooth, Co Kildare, Ireland
Tel: 00 353 7086936
Fax: 00 353 1 7086952 

> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
> 
> Great to hear that, Victor! There was something about a const interator
> in that header that wasn't returning a real const, but I forgot to make
> a note in the moment. I'll see if I can find it after I come back.
> 
> 
> On 19/05/17 16:39, Victor Lazzarini wrote:
>> Not yet, but I will try to design it.
>> 
>> Victor Lazzarini
>> Dean of Arts, Celtic Studies, and Philosophy
>> Maynooth University
>> Ireland
>> 
>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>> 
>>> Hi Pablo,
>>> 
>>> I've implemented this last year:
>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>> 
>>> I used this as a model:
>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>> 
>>> I'd love to know if there's a chance of developing them using C++. It's
>>> so easy to develop with the new plugin.h header now!
>>> 
>>> 
>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>> Hello List.
>>>> Simple question.
>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>> If so...can anyone point at some code example if any?
>>>> Best
>>>> Pablo

Date2017-05-19 23:30
FromOscar Pablo Di Liscia
SubjectRe: [Csnd-dev] GEN Plugin
Great.
Many thanks Guillermo.
Best

2017-05-19 16:36 GMT-03:00 Guillermo Senna <gsenna@gmail.com>:
Hi Pablo,

I've implemented this last year:
https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c

I used this as a model:
https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c

I'd love to know if there's a chance of developing them using C++. It's
so easy to develop with the new plugin.h header now!


On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
> Hello List.
> Simple question.
> Is it possible to write Csound Plugins that create a new GEN routine?
> If so...can anyone point at some code example if any?
> Best
> Pablo
>



--
Dr. Oscar Pablo Di Liscia
Profesor Titular
Director Programa de Investigación "Sistemas Temporales y Síntesis Espacial de Sonido en el Arte Sonoro"
Escuela Universitaria de Artes
Universidad Nacional de Quilmes
Argentina

Date2017-05-21 12:52
FromGuillermo Senna
SubjectRe: [Csnd-dev] GEN Plugin
Hey Victor,

I know what it was. Although having begin() and end() overloaded on
const, the Vector class template is missing cbegin() and cend(). Of
course one could just use a const reference to the object, but why every
other class template has those member functions and Vector doesn't?

Cheers.


On 19/05/17 18:03, Victor Lazzarini wrote:
> Let me know and I will fix it.
> ========================
> Prof. Victor Lazzarini
> Dean of Arts, Celtic Studies, and Philosophy,
> Maynooth University,
> Maynooth, Co Kildare, Ireland
> Tel: 00 353 7086936
> Fax: 00 353 1 7086952 
>
>> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
>>
>> Great to hear that, Victor! There was something about a const interator
>> in that header that wasn't returning a real const, but I forgot to make
>> a note in the moment. I'll see if I can find it after I come back.
>>
>>
>> On 19/05/17 16:39, Victor Lazzarini wrote:
>>> Not yet, but I will try to design it.
>>>
>>> Victor Lazzarini
>>> Dean of Arts, Celtic Studies, and Philosophy
>>> Maynooth University
>>> Ireland
>>>
>>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>>>
>>>> Hi Pablo,
>>>>
>>>> I've implemented this last year:
>>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>>>
>>>> I used this as a model:
>>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>>>
>>>> I'd love to know if there's a chance of developing them using C++. It's
>>>> so easy to develop with the new plugin.h header now!
>>>>
>>>>
>>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>>> Hello List.
>>>>> Simple question.
>>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>>> If so...can anyone point at some code example if any?
>>>>> Best
>>>>> Pablo

Date2017-05-21 15:53
FromVictor Lazzarini
SubjectRe: [Csnd-dev] GEN Plugin
There is a typo in the code, they're there but are called begin and end as well, without the  c. I will fix it when I get to the computer.

Victor Lazzarini
Dean of Arts, Celtic Studies, and Philosophy
Maynooth University
Ireland

> On 21 May 2017, at 12:53, Guillermo Senna  wrote:
> 
> Hey Victor,
> 
> I know what it was. Although having begin() and end() overloaded on
> const, the Vector class template is missing cbegin() and cend(). Of
> course one could just use a const reference to the object, but why every
> other class template has those member functions and Vector doesn't?
> 
> Cheers.
> 
> 
>> On 19/05/17 18:03, Victor Lazzarini wrote:
>> Let me know and I will fix it.
>> ========================
>> Prof. Victor Lazzarini
>> Dean of Arts, Celtic Studies, and Philosophy,
>> Maynooth University,
>> Maynooth, Co Kildare, Ireland
>> Tel: 00 353 7086936
>> Fax: 00 353 1 7086952 
>> 
>>> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
>>> 
>>> Great to hear that, Victor! There was something about a const interator
>>> in that header that wasn't returning a real const, but I forgot to make
>>> a note in the moment. I'll see if I can find it after I come back.
>>> 
>>> 
>>>> On 19/05/17 16:39, Victor Lazzarini wrote:
>>>> Not yet, but I will try to design it.
>>>> 
>>>> Victor Lazzarini
>>>> Dean of Arts, Celtic Studies, and Philosophy
>>>> Maynooth University
>>>> Ireland
>>>> 
>>>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>>>> 
>>>>> Hi Pablo,
>>>>> 
>>>>> I've implemented this last year:
>>>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>>>> 
>>>>> I used this as a model:
>>>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>>>> 
>>>>> I'd love to know if there's a chance of developing them using C++. It's
>>>>> so easy to develop with the new plugin.h header now!
>>>>> 
>>>>> 
>>>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>>>> Hello List.
>>>>>> Simple question.
>>>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>>>> If so...can anyone point at some code example if any?
>>>>>> Best
>>>>>> Pablo

Date2017-05-21 16:36
FromGuillermo Senna
SubjectRe: [Csnd-dev] GEN Plugin
But shouldn't we have both (the overloaded and cbegin/cend) versions
like std::vector does?


On 21/05/17 11:53, Victor Lazzarini wrote:
> There is a typo in the code, they're there but are called begin and end as well, without the  c. I will fix it when I get to the computer.
>
> Victor Lazzarini
> Dean of Arts, Celtic Studies, and Philosophy
> Maynooth University
> Ireland
>
>> On 21 May 2017, at 12:53, Guillermo Senna  wrote:
>>
>> Hey Victor,
>>
>> I know what it was. Although having begin() and end() overloaded on
>> const, the Vector class template is missing cbegin() and cend(). Of
>> course one could just use a const reference to the object, but why every
>> other class template has those member functions and Vector doesn't?
>>
>> Cheers.
>>
>>
>>> On 19/05/17 18:03, Victor Lazzarini wrote:
>>> Let me know and I will fix it.
>>> ========================
>>> Prof. Victor Lazzarini
>>> Dean of Arts, Celtic Studies, and Philosophy,
>>> Maynooth University,
>>> Maynooth, Co Kildare, Ireland
>>> Tel: 00 353 7086936
>>> Fax: 00 353 1 7086952 
>>>
>>>> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
>>>>
>>>> Great to hear that, Victor! There was something about a const interator
>>>> in that header that wasn't returning a real const, but I forgot to make
>>>> a note in the moment. I'll see if I can find it after I come back.
>>>>
>>>>
>>>>> On 19/05/17 16:39, Victor Lazzarini wrote:
>>>>> Not yet, but I will try to design it.
>>>>>
>>>>> Victor Lazzarini
>>>>> Dean of Arts, Celtic Studies, and Philosophy
>>>>> Maynooth University
>>>>> Ireland
>>>>>
>>>>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>>>>>
>>>>>> Hi Pablo,
>>>>>>
>>>>>> I've implemented this last year:
>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>>>>>
>>>>>> I used this as a model:
>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>>>>>
>>>>>> I'd love to know if there's a chance of developing them using C++. It's
>>>>>> so easy to develop with the new plugin.h header now!
>>>>>>
>>>>>>
>>>>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>>>>> Hello List.
>>>>>>> Simple question.
>>>>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>>>>> If so...can anyone point at some code example if any?
>>>>>>> Best
>>>>>>> Pablo

Date2017-05-21 17:01
FromVictor Lazzarini
SubjectRe: [Csnd-dev] GEN Plugin
 No, we need separate ones. C++ does not overload on return types.

Victor Lazzarini
Dean of Arts, Celtic Studies, and Philosophy
Maynooth University
Ireland

> On 21 May 2017, at 16:36, Guillermo Senna  wrote:
> 
> But shouldn't we have both (the overloaded and cbegin/cend) versions
> like std::vector does?
> 
> 
>> On 21/05/17 11:53, Victor Lazzarini wrote:
>> There is a typo in the code, they're there but are called begin and end as well, without the  c. I will fix it when I get to the computer.
>> 
>> Victor Lazzarini
>> Dean of Arts, Celtic Studies, and Philosophy
>> Maynooth University
>> Ireland
>> 
>>> On 21 May 2017, at 12:53, Guillermo Senna  wrote:
>>> 
>>> Hey Victor,
>>> 
>>> I know what it was. Although having begin() and end() overloaded on
>>> const, the Vector class template is missing cbegin() and cend(). Of
>>> course one could just use a const reference to the object, but why every
>>> other class template has those member functions and Vector doesn't?
>>> 
>>> Cheers.
>>> 
>>> 
>>>> On 19/05/17 18:03, Victor Lazzarini wrote:
>>>> Let me know and I will fix it.
>>>> ========================
>>>> Prof. Victor Lazzarini
>>>> Dean of Arts, Celtic Studies, and Philosophy,
>>>> Maynooth University,
>>>> Maynooth, Co Kildare, Ireland
>>>> Tel: 00 353 7086936
>>>> Fax: 00 353 1 7086952 
>>>> 
>>>>> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
>>>>> 
>>>>> Great to hear that, Victor! There was something about a const interator
>>>>> in that header that wasn't returning a real const, but I forgot to make
>>>>> a note in the moment. I'll see if I can find it after I come back.
>>>>> 
>>>>> 
>>>>>> On 19/05/17 16:39, Victor Lazzarini wrote:
>>>>>> Not yet, but I will try to design it.
>>>>>> 
>>>>>> Victor Lazzarini
>>>>>> Dean of Arts, Celtic Studies, and Philosophy
>>>>>> Maynooth University
>>>>>> Ireland
>>>>>> 
>>>>>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>>>>>> 
>>>>>>> Hi Pablo,
>>>>>>> 
>>>>>>> I've implemented this last year:
>>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>>>>>> 
>>>>>>> I used this as a model:
>>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>>>>>> 
>>>>>>> I'd love to know if there's a chance of developing them using C++. It's
>>>>>>> so easy to develop with the new plugin.h header now!
>>>>>>> 
>>>>>>> 
>>>>>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>>>>>> Hello List.
>>>>>>>> Simple question.
>>>>>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>>>>>> If so...can anyone point at some code example if any?
>>>>>>>> Best
>>>>>>>> Pablo

Date2017-05-21 17:04
FromGuillermo Senna
SubjectRe: [Csnd-dev] GEN Plugin
No, but you can overload based on the const-ness of the object. Right
now, it's building successfully because of that (I think).


On 21/05/17 13:01, Victor Lazzarini wrote:
>  No, we need separate ones. C++ does not overload on return types.
>
> Victor Lazzarini
> Dean of Arts, Celtic Studies, and Philosophy
> Maynooth University
> Ireland
>
>> On 21 May 2017, at 16:36, Guillermo Senna  wrote:
>>
>> But shouldn't we have both (the overloaded and cbegin/cend) versions
>> like std::vector does?
>>
>>
>>> On 21/05/17 11:53, Victor Lazzarini wrote:
>>> There is a typo in the code, they're there but are called begin and end as well, without the  c. I will fix it when I get to the computer.
>>>
>>> Victor Lazzarini
>>> Dean of Arts, Celtic Studies, and Philosophy
>>> Maynooth University
>>> Ireland
>>>
>>>> On 21 May 2017, at 12:53, Guillermo Senna  wrote:
>>>>
>>>> Hey Victor,
>>>>
>>>> I know what it was. Although having begin() and end() overloaded on
>>>> const, the Vector class template is missing cbegin() and cend(). Of
>>>> course one could just use a const reference to the object, but why every
>>>> other class template has those member functions and Vector doesn't?
>>>>
>>>> Cheers.
>>>>
>>>>
>>>>> On 19/05/17 18:03, Victor Lazzarini wrote:
>>>>> Let me know and I will fix it.
>>>>> ========================
>>>>> Prof. Victor Lazzarini
>>>>> Dean of Arts, Celtic Studies, and Philosophy,
>>>>> Maynooth University,
>>>>> Maynooth, Co Kildare, Ireland
>>>>> Tel: 00 353 7086936
>>>>> Fax: 00 353 1 7086952 
>>>>>
>>>>>> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
>>>>>>
>>>>>> Great to hear that, Victor! There was something about a const interator
>>>>>> in that header that wasn't returning a real const, but I forgot to make
>>>>>> a note in the moment. I'll see if I can find it after I come back.
>>>>>>
>>>>>>
>>>>>>> On 19/05/17 16:39, Victor Lazzarini wrote:
>>>>>>> Not yet, but I will try to design it.
>>>>>>>
>>>>>>> Victor Lazzarini
>>>>>>> Dean of Arts, Celtic Studies, and Philosophy
>>>>>>> Maynooth University
>>>>>>> Ireland
>>>>>>>
>>>>>>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>>>>>>>
>>>>>>>> Hi Pablo,
>>>>>>>>
>>>>>>>> I've implemented this last year:
>>>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>>>>>>>
>>>>>>>> I used this as a model:
>>>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>>>>>>>
>>>>>>>> I'd love to know if there's a chance of developing them using C++. It's
>>>>>>>> so easy to develop with the new plugin.h header now!
>>>>>>>>
>>>>>>>>
>>>>>>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>>>>>>> Hello List.
>>>>>>>>> Simple question.
>>>>>>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>>>>>>> If so...can anyone point at some code example if any?
>>>>>>>>> Best
>>>>>>>>> Pablo

Date2017-05-21 17:15
FromVictor Lazzarini
SubjectRe: [Csnd-dev] GEN Plugin
None of the other classes do that, I guess I can extend them to do it.

Victor Lazzarini
Dean of Arts, Celtic Studies, and Philosophy
Maynooth University
Ireland

> On 21 May 2017, at 17:04, Guillermo Senna  wrote:
> 
> No, but you can overload based on the const-ness of the object. Right
> now, it's building successfully because of that (I think).
> 
> 
>> On 21/05/17 13:01, Victor Lazzarini wrote:
>> No, we need separate ones. C++ does not overload on return types.
>> 
>> Victor Lazzarini
>> Dean of Arts, Celtic Studies, and Philosophy
>> Maynooth University
>> Ireland
>> 
>>> On 21 May 2017, at 16:36, Guillermo Senna  wrote:
>>> 
>>> But shouldn't we have both (the overloaded and cbegin/cend) versions
>>> like std::vector does?
>>> 
>>> 
>>>> On 21/05/17 11:53, Victor Lazzarini wrote:
>>>> There is a typo in the code, they're there but are called begin and end as well, without the  c. I will fix it when I get to the computer.
>>>> 
>>>> Victor Lazzarini
>>>> Dean of Arts, Celtic Studies, and Philosophy
>>>> Maynooth University
>>>> Ireland
>>>> 
>>>>> On 21 May 2017, at 12:53, Guillermo Senna  wrote:
>>>>> 
>>>>> Hey Victor,
>>>>> 
>>>>> I know what it was. Although having begin() and end() overloaded on
>>>>> const, the Vector class template is missing cbegin() and cend(). Of
>>>>> course one could just use a const reference to the object, but why every
>>>>> other class template has those member functions and Vector doesn't?
>>>>> 
>>>>> Cheers.
>>>>> 
>>>>> 
>>>>>> On 19/05/17 18:03, Victor Lazzarini wrote:
>>>>>> Let me know and I will fix it.
>>>>>> ========================
>>>>>> Prof. Victor Lazzarini
>>>>>> Dean of Arts, Celtic Studies, and Philosophy,
>>>>>> Maynooth University,
>>>>>> Maynooth, Co Kildare, Ireland
>>>>>> Tel: 00 353 7086936
>>>>>> Fax: 00 353 1 7086952 
>>>>>> 
>>>>>>> On 19 May 2017, at 20:46, Guillermo Senna  wrote:
>>>>>>> 
>>>>>>> Great to hear that, Victor! There was something about a const interator
>>>>>>> in that header that wasn't returning a real const, but I forgot to make
>>>>>>> a note in the moment. I'll see if I can find it after I come back.
>>>>>>> 
>>>>>>> 
>>>>>>>> On 19/05/17 16:39, Victor Lazzarini wrote:
>>>>>>>> Not yet, but I will try to design it.
>>>>>>>> 
>>>>>>>> Victor Lazzarini
>>>>>>>> Dean of Arts, Celtic Studies, and Philosophy
>>>>>>>> Maynooth University
>>>>>>>> Ireland
>>>>>>>> 
>>>>>>>>> On 19 May 2017, at 20:36, Guillermo Senna  wrote:
>>>>>>>>> 
>>>>>>>>> Hi Pablo,
>>>>>>>>> 
>>>>>>>>> I've implemented this last year:
>>>>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/quadbezier.c
>>>>>>>>> 
>>>>>>>>> I used this as a model:
>>>>>>>>> https://github.com/csound/csound/blob/develop/Opcodes/fareygen.c
>>>>>>>>> 
>>>>>>>>> I'd love to know if there's a chance of developing them using C++. It's
>>>>>>>>> so easy to develop with the new plugin.h header now!
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>>> On 19/05/17 16:16, Oscar Pablo Di Liscia wrote:
>>>>>>>>>> Hello List.
>>>>>>>>>> Simple question.
>>>>>>>>>> Is it possible to write Csound Plugins that create a new GEN routine?
>>>>>>>>>> If so...can anyone point at some code example if any?
>>>>>>>>>> Best
>>>>>>>>>> Pablo