// SampleModuleB.h // // This is part of the principal sample of how to use the ErrorLogger // mechanism in a realistic setting. // // The overall structure assumed is that some programmer(s) provide a // "framework" including the main program, various setups and event-flow // controls, and so forth. Then each group of physicists provide "modules" // (or, in D0 language, "packages") which do steps of physics calculation -- // the framework will pass an event from package to package. // // This sample is composed of five files: // SampleFramework // SampleModule // SampleEvent // SampleModuleA // SampleModuleB contains the physics code written by group A to act // as module B. This has just one .h and one .cc file, // though actual physics code would probably have // files for each indiviedual subroutine. // #ifndef SAMPLE_MODULE_B #define SAMPLE_MODULE_B #ifndef ZMENVIRONMENT_H #include "ZMutility/ZMenvironment.h" #endif #include #include "SampleModule.h" // This module is derived from the base class SampleModule. #include "SampleEvent.h" // When invoke() is called, it acts on an event. class SampleModuleB : public SampleModule { public: SampleModuleB ( const std::string & name ); void invoke ( Event & event ); void preliminaryFit (Event & event); void refineTracks1 (Event & event); void refineTracks2 (Event & event); void refineTracks3 (Event & event); }; // SampleModuleB #endif // SAMPLE_MODULE_B