Fork me on GitHub

Version 1 (modified by Pavel Demin, 12 years ago) ( diff )

--

Delphes' module system is inspired by the 'Folders and Tasks' chapter from the ROOT Users Guide and it's based on the TTask and TFolder classes.

http://root.cern.ch/download/doc/ROOTUsersGuideHTML/ch10.html

All Delphes' modules consume and produce TObjArrays of ExRootCandidates. Every Delphes' module has a corresponding TFolder that is used to store TObjArrays produced by this module. Any Delphes' module can access TObjArrays produced by other Delphes' module using ImportArray("ModuleInstanceName/arraName") method.

The contents of all Delphes' TFolders and TObjArrays is browsable:

Additional classes ExRootTask and ExRootModule has been developed to provide frequently used services for Delphes. All Delphes' modules inherit from ExRootModule.

#ifndef ExampleModule_h
#define ExampleModule_h

#include "ExRootAnalysis/ExRootModule.h"

#include <map>
#include <set>
#include <deque>

class TArrayD;
class TObjArray;
class ExRootCandidate;

class ExampleModule: public ExRootModule
{
public:

  ExampleModule();
  ~ExampleModule();

  void Init();
  void Process();
  void Finish();

private:

  TIterator *fItInputArray; //!

  const TObjArray *fInputArray; //!

  TObjArray *fOutputArray; //!

  ClassDef(ExampleModule, 1)
};

#endif

Attachments (2)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.