[Ktechlab-devel] test-cases using KDevelop::Core

P Zoltan zoltan.padrah at gmail.com
Thu Apr 15 19:33:45 UTC 2010


On Sun, 11 Apr 2010 21:54:03 +0200, Julian Bäume <julian at svg4all.de> wrote:

>
> As a next step, I want to have the same thing for circuit files. Reading
> already works, but writing the model to disk is not implemented,yet.  
> Zoltan,
> you already started working on implementing tests on this, so I guess,  
> we will
> have something working, soon. It is already possible to delete  
> Components from
> the scene, these events just need to be propagated to the model and  
> writing
> the model to disk needs to be implemented. This shouldn't be too hard.  
> All
> this should be covered by unit-tests, of course.

  When started writing tests, I've found some problems I've described.

  First of all, it's hard to create a new document. After debugging a lot,  
I've found the solution mentioned in a previous email.

  Then getting the model is currently not possible. Not a big problem, can  
be fixed with the interfaces.

  Now I'm thinking how hook up the simulator.

  The debugController might be useful for running PIC programs. It might be  
usef for circuits, too, but I don't know which one is the better solution:  
implement the IDebugSesstion interface or subclass the Core and add  
SimulatorController type member, where the documents can register  
themselves. It's not obvious.

  For simulation we need:
- the actual simulator, for different document types
- a way to register new component models for a simulator class/document  
type, in order to be loaded from plugins
- the models for the compoennts

  So one way to do this might be:
create an ISimulatorController. It contains a list of registered component  
types and the factories associated with them, and also a list of document  
types and document simulator factories.
When a new document is created, it creates a new document simulator with  
the document type (great, now we will again have document.type()), and  
attaches the simulator to the document model. Then the document simulator  
on each model change can rebuild the structure formed by the models. Also,  
when a given time elapses, the document simulator runs a step in  
simulation.
  The problem with this solution is I don't know how will be  
kdevplatform/kde able to load a needed plugin if a component residing in  
some now loaded plugin is needed.

  Opinions, ideas?

>
> bye then
> julian
>

  Zoltan




More information about the Ktechlab-devel mailing list