[Rivet] Publication metadata and FastJets projection fixes

Andy Buckley andy.buckley at durham.ac.uk
Fri Dec 14 18:38:45 GMT 2007


I've just checked in a bunch of changes to the code... you'll now note
that Analysis classes have a range of "publication metadata" methods,
which in most cases replace the getName() method and give us some room
for giving more informative information about each analysis on the
command line.

I also made quite a few changes centering on the FastJets projection and
classes that use it. I've got a few comments arising from that...

* The various enums for built-in and plugin FastJet algorithms were
being stored as data members for no particular reason, which was
particularly bad since this meant some members would be undefined and
uninitialized depending on whether a built-in or plugin alg is being
used. I've removed them from FastJets and also from analyses which were
storing them and then not using them. Data members aren't always needed
- and if they're not it may be simpler and clearer not to have a level
of indirection.

* If a plugin analysis is used, it is "new"d. Fair enough, but then it
isn't deleted: memory leak! I've added a delete statement to the
constructor - please always make sure to add a delete operator if you
use "new".

* Changed arg constructor argument order: I think we should
conventionally always make projections come in the constructor args of
other projections before any non-projection params. And FinalState
projections come first of all.

I think we should probably decide on a few more conventions like this
last one... I'll send a mail round about that.

Cheers,
Andy


More information about the Rivet mailing list