On Tue, 9 Oct 2001, Paul Winkler wrote:
> On Tue, Oct 09, 2001 at 07:02:40PM +0200, Maurizio Umberto Puxeddu wrote:
> > Probably we should have a base class for Event, say Spot or so, which has
> > an onset but not a duration nor stretch methods. Event should be a Spot
> > with a duration. F should derive (indirectly) from Spot and not from
> > Event.
>
> But then you can't treat instances of F and I polymorphically. And if
> it has no stretch methods, how can we move F instances around? IMHO it
> would be nice if F had the Event interface.
You use move*() methods to move things around. Such methods do not
depend on or change the duration of the event so they would go in the Spot
interface and you would be still able to move F around.
Moving an aggregate would move all moveable contained objects.
On the other side stretching a function table doesn't make sense so it
will not have such stretch*() methods. Doesn't it sound good?
> Are you worried about F having the misleading attribute "duration"
> which actually stores its size? That could be fixed by overloading the
> __init__ and __str__ methods.
There are no problems with csound scores. I'm using Sample tables right
now, for example (as attachment of course). But all the code related to
Csound scores is bad placed now. I have to take some time and think of
it.
Maurizio Umberto Puxeddu.
|