libraries/wiredbas/node/EthernetSwitch.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 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  doxygen 1.5.4
Contact 
©2002-2018 U.C. Regents