Main Page | Class Hierarchy | Compound List | File List | Compound Members | File Members

fifoimpl.h

Go to the documentation of this file.
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 FIFOIMPL_H
00012 #define FIFOIMPL_H
00013 
00014 #include "fifobase.h"
00015 #include <vector>
00016 
00017 class rteFifo;
00018 
00019 class FifoImpl : public FifoBase
00020 {
00021 public:
00022   FifoImpl(const IdBase& n);
00023   FifoImpl(const IdBase& n, unsigned int lo);
00024   FifoImpl(const IdBase& n, unsigned int lo, unsigned int hi);
00025 
00026   unsigned int minSize() const;
00027   unsigned int maxSize() const;
00028   virtual unsigned int tokenSize() const = 0;
00029   
00030   friend class rteFifo;
00031   unsigned int nrRteFifos() const;
00032   rteFifo* rte(unsigned int i=0) const;
00033 
00034 private:
00035   unsigned int minSz;
00036   unsigned int maxSz;
00037 
00038 protected:
00039   std::vector<rteFifo*> impl;
00040 };
00041 
00042 #endif

Generated on Wed Feb 15 14:52:39 2006 for yapi by doxygen 1.3.2