00001 /*-------------------------------------------------------------------- 00002 * 00003 * (C) Copyright Koninklijke Philips Electronics NV 2006. 00004 * All rights reserved. This software is licensed under the terms of 00005 * version 2.1 of the GNU Lesser General Public License as published 00006 * by the Free Software Foundation. For licensing and warranty 00007 * information, see the file COPYING in the main directory. 00008 * 00009 *------------------------------------------------------------------*/ 00010 00011 #ifndef RTENETWORK_H 00012 #define RTENETWORK_H 00013 00014 class NetworkImpl; 00015 class ProcessImpl; 00016 class FifoImpl; 00017 class SelectImpl; 00018 00019 class rteProcess; 00020 class rteFifo; 00021 class rteSelect; 00022 00023 class rteNetwork 00024 { 00025 public: 00026 rteNetwork(NetworkImpl& n); 00027 virtual ~rteNetwork(); 00028 00029 const NetworkImpl* api() const; 00030 00031 virtual void start() = 0; 00032 virtual void printCommunicationWorkload() = 0; 00033 virtual void printComputationWorkload() = 0; 00034 00035 private: 00036 NetworkImpl* base; 00037 }; 00038 00039 #endif