ElectricalTimingOptimizer.h revision 10447
110447Snilay@cs.wisc.edu#ifndef __DSENT_MODEL_TIMING_GRAPH_ELECTRICAL_TIMING_OPTIMIZER_H__ 210447Snilay@cs.wisc.edu#define __DSENT_MODEL_TIMING_GRAPH_ELECTRICAL_TIMING_OPTIMIZER_H__ 310447Snilay@cs.wisc.edu 410447Snilay@cs.wisc.edu#include "util/CommonType.h" 510447Snilay@cs.wisc.edu#include "model/ElectricalModel.h" 610447Snilay@cs.wisc.edu 710447Snilay@cs.wisc.edunamespace DSENT 810447Snilay@cs.wisc.edu{ 910447Snilay@cs.wisc.edu // This model is only used to optimize the timing 1010447Snilay@cs.wisc.edu class ElectricalTimingOptimizer : public ElectricalModel 1110447Snilay@cs.wisc.edu { 1210447Snilay@cs.wisc.edu public: 1310447Snilay@cs.wisc.edu ElectricalTimingOptimizer(const String& instance_name_, const TechModel* tech_model_); 1410447Snilay@cs.wisc.edu virtual ~ElectricalTimingOptimizer(); 1510447Snilay@cs.wisc.edu 1610447Snilay@cs.wisc.edu public: 1710447Snilay@cs.wisc.edu void setModel(ElectricalModel* model_); 1810447Snilay@cs.wisc.edu ElectricalModel* getModel(); 1910447Snilay@cs.wisc.edu 2010447Snilay@cs.wisc.edu protected: 2110447Snilay@cs.wisc.edu // Build the optimizer 2210447Snilay@cs.wisc.edu virtual void constructModel(); 2310447Snilay@cs.wisc.edu 2410447Snilay@cs.wisc.edu private: 2510447Snilay@cs.wisc.edu ElectricalModel* m_model_; 2610447Snilay@cs.wisc.edu }; // class ElectricalTimingOptimizer 2710447Snilay@cs.wisc.edu} // namespace 2810447Snilay@cs.wisc.edu 2910447Snilay@cs.wisc.edu#endif // __DSENT_MODEL_TIMING_GRAPH_ELECTRICAL_TIMING_OPTIMIZER_H__ 3010447Snilay@cs.wisc.edu 31