[Ktechlab-devel] New guy <--

Alan Grimes agrimes at speakeasy.net
Tue Nov 11 23:41:12 UTC 2008


>   Anyway, the save-load should be changed, because:
> - it's not extensible; there is no file-format versioning support.
> - it's hard to mantain: the load-save mechanism contains some "data"  
> classes, which must be in sync with the internal data strctures.
> (- the generated XML sucks, imho :P)

Lay some ideas on us. =)

>   My opinion is that the code responsible for loading and saving existing  
> file format should be separated in some classes; the objects (connectors,  
> nodes, ...) should be able to load and save their states in some text; the  
> versioning can be done by creating converters between the actual format  
> and the (possibly older) other version; the conversion between document  
> format should not be done in the components.

I don't think the user base is big enough to really overhaul stuff. We
should take either the current format or the most recent working format
as the "old" format, and maybe provide an import for that.

Overhauling the save format will be crucial to making progress on the
new parts library...

One critical issue with the parts library is to maintain the
cleanliness, ease of use of the current parts library, It should still
be possible to say "Gimme a PNP transistor" with great ease. and still
be able to go in and select a specific PNP transistor...

One obvious solution for the equation editor is to simply use the
standard: http://www.w3.org/Math/

Granted, ktechlab will need standardized variables to access Cbranches
and Cnodes, and other variables in the matrix and simulator.


>   I also found the following problems:
> - an infinite loop in LogicProbeData::findPos(). When the 'time' parameter  
> is out of the range of the probe, the program gets stuck with top ==  
> bottom +1 == 1; The question is how to fix it in an 'elegant' way?

The old code for the probe data used an ugly/custom vector class... I
converted it to the standard vector class... main problem with the
current code is that if you leave it running all day, the buffers will
grow without bounds... (that should be a FIXME actually..) workaround:
just hit reset every few minutes...


-- 
New president: Here we go again...
Chemistry.com: A total rip-off.
Powers are not rights.





More information about the Ktechlab-devel mailing list