libraries/wiredbas/node/ArcnetNode.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 ARCNETNODE_H_
00009 #define ARCNETNODE_H_
00010 
00011 #include "networks/wiredbas/WiredBasPlatformInstance.h"
00012 #include "networks/wiredbas/WiredBasImplementation.h"
00013 #include "quantities/Position.h"
00014 #include "quantities/Bandwidth.h"
00015 #include "quantities/Ports.h"
00016 #include "quantities/RealDelay.h"
00017 #include "libraries/wiredbas/common/Node.h"
00018 #include "models/wiredbas/node/ArcnetNodeCost.h"
00019 #include <string>
00020 
00021 namespace cosi {
00022 
00023 namespace library {
00024 
00025 namespace wiredbas {
00026 
00027 class ArcnetNode : public cosi::library::wiredbas::Node {
00028 
00029 protected:
00030         cosi::models::wiredbas::ArcnetNodeCost* mCostModel;
00031 
00032 public:
00033         ArcnetNode();
00034         virtual ~ArcnetNode();
00035 
00036         void SetCostModel(cosi::models::wiredbas::ArcnetNodeCost* pCostModel);
00037 
00038         virtual RealDelay GetDelay(Vertex NodeId,
00039                         cosi::commstruct::wiredbas::Implementation* pI, Vertex Src,
00040                         Vertex Dest) = 0 ;
00041 
00042         virtual double GetDelayValue(Vertex NodeId,
00043                         cosi::commstruct::wiredbas::Implementation* pI, Vertex Src,
00044                         Vertex Dest)= 0;
00045 
00046         virtual cosi::commstruct::wiredbas::PlatformInstance* GetPlatformInstance(
00047                         int V, Position pP) = 0;
00048 
00049         virtual cosi::commstruct::wiredbas::Implementation
00050                         * GetImplementationInstance(int V, Position pP, ThreadSet pThreads,
00051                                         TransferTable pT) = 0;
00052 
00053         virtual double GetCost() = 0 ;
00054 
00055 };
00056 
00057 }
00058 }
00059 }
00060 
00061 #endif /*ARCNETNODE_H_*/

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