#ifndef GEOMETRY_MANAGEMENT_HPP #define GEOMETRY_MANAGEMENT_HPP // // $Id: geometry_management.hpp,v 1.6 2000/12/05 16:52:56 hobbs Exp $ // // File: geometry_management.hpp // Purpose: Create a framework package to handle the DZero RECO geometry // This has only the initialization and begin run hook which is used // to check if a new geometry is needed. // Created: 11-MAY-1998 John Hobbs // // $Revision: 1.6 $ // // // Include files #include #include namespace fwk { class WorkQueue; } class GeometryManager; /** Geometry Management Framework Package. Create a {\bf Framework} package to handle the D0 geometry. This has only the initialization and {\bf runInit} hook which is used to check if a new geometry is needed. The framework promises that whenever the current event has a different run number than the previous event, runInit will be called, even if no begin run record is present. (The makeDecision hooks will be used for MC if run numbers don't change) */ class geometry_management: public fwk::Package, public fwk::Decide { public: /// Constructor geometry_management(fwk::Context* context); /// Required framework interface. std::string packageName() const; /// Required framework interface. static std::string package_name(); /// Required framework interface. static std::string version(); /// The method imposed by using the Decide hook fwk::Result makeDecision(const edm::Event& event, fwk::WorkQueue &wq); /// Have to use this, but don't need it, so just return. fwk::Result makeDecision(fwk::WorkQueue& wq); private: GeometryManager *_theManager; }; // Constructors/Destructors // Accessors #endif //GEOMETRY_MANAGEMENT_HPP