Csound Csound-dev Csound-tekno Search About

Re: [Cs-dev] pre-release questions

Date2006-10-17 16:57
FromMichael Gogins
SubjectRe: [Cs-dev] pre-release questions
Perhaps a better way to do this is to create an interface in Csound that hides away all the platform specific stuff. This interface would be compiled and instantiated as a dummy on Windows until the remoting code is implemented there. Then all the #ifdefs only happen in the implementation of the interface. 

remoteGlobals below could be an instance of this dummy and it could remain in the Windows build.

Regards,
Mike

-----Original Message-----
>From: Anthony Kozar 
>Sent: Oct 17, 2006 10:40 AM
>To: Csound Developer list 
>Subject: Re: [Cs-dev] pre-release questions
>
>I don't think it was possible to put it all in a plugin because there were
>significant changes to musmon.c to support the remote events.  I have used
>the macro NO_REMOTE to comment out the code for MacOS 9.  The reason I am
>asking about it before committing though is because I ended up with some
>code like this:
>
>    if (O->RTevents
>#ifndef NO_REMOTE
>                    || (csound->remoteGlobals && SR(socksin))
>#endif
>       ) {
>
>I did not want to make such ugly changes to someone else's code without
>asking first if there is a better way to go about it.  I am also commenting
>out the new globals in the CSOUND struct:
>
>#ifndef NO_REMOTE
>    REMOT_BUF     SVrecvbuf;  /* RM: rt_evt input Communications buffer */
>    void          *remoteGlobals;
>#endif
>
>I did this because REMOT_BUF is defined in remote.h which has a lot of
>declarations that would not work.  I suppose it might be possible to comment
>out the bits in remote.h instead and provide alternate empty functions for
>the code in remote.c but that was more work and I was not sure if that was a
>safe route to go.  (As it is, I am not completely sure that the parts of
>musmon.c that I commented out will not be a problem since I do not
>understand that code).
>
>Perhaps it would be easier if I commit the changes so that others can
>examine and comment on them??
>
>Anthony
>
>
>Michael Gogins wrote on 10/17/06 10:02 AM:
>
>> Simply omit the remote code from all but Linux builds. Is it a plugin? If it
>> isn't, it should be. 
>
>
>-------------------------------------------------------------------------
>Using Tomcat but need to do more? Need to support web services, security?
>Get stuff done quickly with pre-integrated technology to make your job easier
>Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
>http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>_______________________________________________
>Csound-devel mailing list
>Csound-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/csound-devel




-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2006-10-18 04:17
From"Dr. Richard Boulanger"
SubjectRe: [Cs-dev] pre-release questions
I like the idea of coming up with some way of hiding the ifDefs and  
platform specific stuff.
I know that Barry would be happier to see cleaner code.

Rick

On Oct 17, 2006, at 11:57 AM, Michael Gogins wrote:

> Perhaps a better way to do this is to create an interface in Csound  
> that hides away all the platform specific stuff. This interface  
> would be compiled and instantiated as a dummy on Windows until the  
> remoting code is implemented there. Then all the #ifdefs only  
> happen in the implementation of the interface.
>
> remoteGlobals below could be an instance of this dummy and it could  
> remain in the Windows build.
>
> Regards,
> Mike
>
> -----Original Message-----
>> From: Anthony Kozar 
>> Sent: Oct 17, 2006 10:40 AM
>> To: Csound Developer list 
>> Subject: Re: [Cs-dev] pre-release questions
>>
>> I don't think it was possible to put it all in a plugin because  
>> there were
>> significant changes to musmon.c to support the remote events.  I  
>> have used
>> the macro NO_REMOTE to comment out the code for MacOS 9.  The  
>> reason I am
>> asking about it before committing though is because I ended up  
>> with some
>> code like this:
>>
>>    if (O->RTevents
>> #ifndef NO_REMOTE
>>                    || (csound->remoteGlobals && SR(socksin))
>> #endif
>>       ) {
>>
>> I did not want to make such ugly changes to someone else's code  
>> without
>> asking first if there is a better way to go about it.  I am also  
>> commenting
>> out the new globals in the CSOUND struct:
>>
>> #ifndef NO_REMOTE
>>    REMOT_BUF     SVrecvbuf;  /* RM: rt_evt input Communications  
>> buffer */
>>    void          *remoteGlobals;
>> #endif
>>
>> I did this because REMOT_BUF is defined in remote.h which has a  
>> lot of
>> declarations that would not work.  I suppose it might be possible  
>> to comment
>> out the bits in remote.h instead and provide alternate empty  
>> functions for
>> the code in remote.c but that was more work and I was not sure if  
>> that was a
>> safe route to go.  (As it is, I am not completely sure that the  
>> parts of
>> musmon.c that I commented out will not be a problem since I do not
>> understand that code).
>>
>> Perhaps it would be easier if I commit the changes so that others can
>> examine and comment on them??
>>
>> Anthony
>>
>>
>> Michael Gogins wrote on 10/17/06 10:02 AM:
>>
>>> Simply omit the remote code from all but Linux builds. Is it a  
>>> plugin? If it
>>> isn't, it should be.
>>
>>
>> --------------------------------------------------------------------- 
>> ----
>> Using Tomcat but need to do more? Need to support web services,  
>> security?
>> Get stuff done quickly with pre-integrated technology to make your  
>> job easier
>> Download IBM WebSphere Application Server v.1.0.1 based on Apache  
>> Geronimo
>> http://sel.as-us.falkag.net/sel? 
>> cmd=lnk&kid=120709&bid=263057&dat=121642
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>
>
>
>
> ---------------------------------------------------------------------- 
> ---
> Using Tomcat but need to do more? Need to support web services,  
> security?
> Get stuff done quickly with pre-integrated technology to make your  
> job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache  
> Geronimo
> http://sel.as-us.falkag.net/sel? 
> cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net