ModelGen.h revision 10447:a465576671d4
1#ifndef __DSENT_MODEL_MODELGEN_H__
2#define __DSENT_MODEL_MODELGEN_H__
3
4#include "util/CommonType.h"
5
6namespace DSENT
7{
8    class Model;
9    class ElectricalModel;
10    class StdCell;
11    class TechModel;
12
13    class ModelGen
14    {
15        public:
16            // Create the model corresponding to the given String
17            static Model* createModel(const String& model_name_, const String& instance_name_, const TechModel* tech_model_);
18            // Create the standard cell corresponding to the given String
19            static StdCell* createStdCell(const String& std_cell_name_, const String& instance_name_, const TechModel* tech_model_);
20            // Create the ram corresponding to the given String
21            static ElectricalModel* createRAM(const String& ram_name_, const String& instance_name_, const TechModel* tech_model_);
22            // Create the crossbar corresponding to the given String
23            static ElectricalModel* createCrossbar(const String& crossbar_name_, const String& instance_name_, const TechModel* tech_model_);
24            // Print the available models
25            static void printAvailableModels();
26    };
27} // namespace DSENT
28
29#endif // __DSENT_MODEL_MODELGEN_H__
30
31