Add a custom engine to the RootTreeWriter

The following recipe expects the local path to be the base point of the RootTreeWriter package.

A new engine requires each a header and a code file

engines/newEngine.hh
engines/newEngine.cc

and contain an implementation of the RootWriteEngine interface:

//  this is file engines/newEngine.hh

#include "RootWriteEngine.hh"

class newEngine : public RootWriteEngine{
...
};

In addition, the files engines/EnginesAdd.icc and engines/EnginesInclude.icc need to be extended by corresponding entries for the new class/header file. The new engine is ready to use after re-compiling the whole package.

There is a shell script named createEngineTemplate.sh in the bin/ directory of the RootTreeWriter source package, which will create a skeleton for a new engine. The skeleton should contain enough code to get started, even if you are new either to ROOT or LCIO.

For the time being, existing engines may serve as a reference to set up custom engines. Detailed documentation will follow.

RootTreeWriter/HowToExtend (last edited 2009-06-19 15:04:56 by JörgenSamson)