libraries/onchipcommunication/common/Node.h

Go to the documentation of this file.
00001 //============================================================================
00002 // Author      : Alessandro Pinto <apinto@eecs.berkeley.edu>
00003 //               University of California, Berkeley
00004 //               545 Cory Hall, Berkeley, CA 94720
00005 // Copyright   : See COPYING file that comes with this distribution
00006 //============================================================================
00007 
00008 #ifndef LIBRARIES_WIREDBAS_COMMON_NODE_H_
00009 #define LIBRARIES_WIREDBAS_COMMON_NODE_H_
00010 
00011 #include "InstantiableNode.h"
00012 #include "quantities/CommoditySet.h"
00013 #include "models/onchipcommunication/common/AreaModel.h"
00014 #include "models/onchipcommunication/common/PowerModel.h"
00015 
00016 
00017 namespace cosi {
00018 
00019 namespace library {
00020 
00021 namespace onchipcommunication {
00022 
00023 class Node : public cosi::library::onchipcommunication::InstantiableNode {
00024 protected:
00025         cosi::models::onchipcommunication::NodeAreaModel* mAreaModel;
00026 
00027         cosi::models::onchipcommunication::NodePowerModel* mPowerModel;
00028 
00029 public:
00030         Node();
00031         virtual ~Node();
00032 
00033         void SetAreaModel(cosi::models::onchipcommunication::NodeAreaModel* pModel);
00034 
00035         void
00036                         SetPowerModel(
00037                                         cosi::models::onchipcommunication::NodePowerModel* pModel);
00038 
00039         //COST METRICS
00040         virtual double GetArea() = 0 ;
00041         virtual double GetStaticPower() = 0  ;
00042         virtual double GetDynamicPower(
00043                         std::map< std::string , CommoditySet > pCommodities) = 0 ;
00044 
00045         virtual std::string GetComponentName() = 0 ;
00046         virtual std::string GetComponentType() = 0 ;
00047 
00048 
00049 };
00050 
00051 }
00052 
00053 }
00054 
00055 }
00056 
00057 #endif /*NODE_H_*/

Generated on Sun Sep 7 18:37:42 2008 for COSI by  doxygen 1.5.4
Contact 
©2002-2018 U.C. Regents