libraries/wiredbas/link/EthernetLink.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 ETHERNETLINK_H_
00009 #define ETHERNETLINK_H_
00010 
00011 #include <string>
00012 #include "networks/wiredbas/WiredBasPlatformInstance.h"
00013 #include "networks/wiredbas/WiredBasImplementation.h"
00014 #include "quantities/WiringPath.h"
00015 #include "quantities/RealLatency.h"
00016 #include "quantities/Name.h"
00017 #include "quantities/Ports.h"
00018 #include "libraries/wiredbas/common/Link.h"
00019 #include "models/wiredbas/link/EthernetLinkDelay.h"
00020 #include "models/wiredbas/link/EthernetLinkCost.h"
00021 
00022 namespace cosi {
00023 
00024 namespace library {
00025 
00026 namespace wiredbas {
00027 
00028 class EthernetLink : public Link {
00029 
00030         cosi::models::wiredbas::EthernetLinkDelay* mDelayModel;
00031 
00032         cosi::models::wiredbas::EthernetLinkCost* mCostModel;
00033 public:
00034         
00035         EthernetLink(double Speed);
00036         
00037         virtual ~EthernetLink();
00038         
00039         RealDelay GetDelay(int Length , WiringPath pPath);
00040         
00041         double GetDelayValue(int Length , WiringPath pPath);
00042 
00043         double GetCost(WiringPath pPath);
00044 
00045         cosi::commstruct::wiredbas::PlatformInstance* GetPlatformInstance(int U,
00046                         std::string pPortU, int V, std::string pPortV);
00047 
00048         cosi::commstruct::wiredbas::Implementation * GetImplementationInstance(
00049                         int U, std::string pPortU, int V, std::string pPortV,
00050                         WiringPath pPath);
00051 
00052         std::string ComponentName ;
00053         std::string ComponentType ;
00054         
00055         
00056         
00057 };
00058 
00059 }
00060 
00061 }
00062 
00063 }
00064 
00065 #endif /*ETHERNETLINK_H_*/

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