|
libraries/wiredbas/node/EthernetSwitch.hGo 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 ETHERNETSWITCH_H_ 00009 #define ETHERNETSWITCH_H_ 00010 00011 #include <sstream> 00012 #include "EthernetNode.h" 00013 #include "models/wiredbas/node/EthernetSwitchDelay.h" 00014 00015 namespace cosi { 00016 00017 namespace library { 00018 00019 namespace wiredbas { 00020 00021 class EthernetSwitch : public EthernetNode { 00022 cosi::models::wiredbas::EthernetSwitchDelay* mDelayModel; 00023 public: 00024 EthernetSwitch(int Nin, int Nout, double Speed); 00025 virtual ~EthernetSwitch(); 00026 cosi::commstruct::wiredbas::PlatformInstance* GetPlatformInstance(int V, 00027 Position pP); 00028 00029 cosi::commstruct::wiredbas::Implementation * GetImplementationInstance( 00030 int V, Position pP, ThreadSet pThreads, TransferTable pT); 00031 00032 RealDelay GetDelay(Vertex NodeId, 00033 cosi::commstruct::wiredbas::Implementation* pI, Vertex Src, 00034 std::string Dest); 00035 double GetDelayValue(Vertex NodeId, 00036 cosi::commstruct::wiredbas::Implementation* pI, Vertex Src, 00037 std::string Dest); 00038 double GetCost(); 00039 00040 RealDelay GetDelay(Vertex NodeId, 00041 cosi::commstruct::wiredbas::Implementation* pI, Vertex Src, 00042 Vertex Dest) {return RealDelay(0);}; 00043 double GetDelayValue(Vertex NodeId, 00044 cosi::commstruct::wiredbas::Implementation* pI, Vertex Src, 00045 Vertex Dest) {return 0;}; 00046 00047 std::string ComponentName; 00048 std::string ComponentType; 00049 }; 00050 00051 } 00052 00053 } 00054 00055 } 00056 00057 #endif /*ETHERNETSWITCH_H_*/ Generated on Sun Sep 7 18:37:42 2008 for COSI by 1.5.4 |