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 SELECTIMPL_H 00012 #define SELECTIMPL_H 00013 00014 #include "selectbase.h" 00015 00016 class InPortImpl; 00017 class OutPortImpl; 00018 class rteSelect; 00019 00020 class SelectImpl : public SelectBase 00021 { 00022 public: 00023 SelectImpl(const IdBase& n); 00024 ~SelectImpl(); 00025 00026 void pushBack(const InPortImpl& p, unsigned int n=1); 00027 void pushBack(const OutPortImpl& p, unsigned int n=1); 00028 00029 unsigned int select (); 00030 00031 friend class rteSelect; 00032 rteSelect* rte() const; 00033 00034 private: 00035 rteSelect* impl; 00036 }; 00037 00038 #endif