[Clam-devel] PATCH: revised ControlTrace{Reader,Writer} classes

Zach Welch zach-clam-devel at splitstring.com
Wed Apr 18 01:01:15 PDT 2007


David García Garzón wrote:
> Zach, finally we took a look at this patch.
> 
> As discussed on the irc, those changes will need a refactor in order to remove 
> the ConfigurableFile. So we propose you the following changes to the patch 
> before committing it:
> 
> * Remove dependencies on ConfigurableFile
> * Write new Filename subclasses and use them for configuration
> * Move the XML Restore and Dump, now at  ControlTraceFiles to the 
> ControlTraceReader::ConcreteStart and ControlTraceWriter::ConcreteStop.
> * Drop ControlTraceFileTarget/Source classes

I have attached a new patch that accomplishes almost everything you ask;
I think the Load is better performed in the Configure step, since errors
can be detected at that point and reported as a misconfiguration.  Other
than that, I think it's all there... and then some. I added a "repeats"
storage optimization that gives run length encoding of the value sets,
which can help shrink (and annotate) traces whose inputs change
relatively infrequently (e.g. GUI controls).

Old traces (v0) produced by the last version of this patch can not be
read by this final version (v1), but I added provisions to support the
new trace format through further revisions. This means all trace files
created with the forthcoming ControlTracerWriter should be playable by
future versions of the ControlTraceReader. Since I foresee creating a
small library of traces, I have tried to allow for forward portability
of such data sets.

Cheers,

Zach

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: control-traces-v6.patch
URL: <http://lists.clam-project.org/pipermail/clam-devel-clam-project.org/attachments/20070418/156c9a9c/attachment.ksh>


More information about the clam-devel mailing list