00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00022 #ifndef __CONSUMER_H__
00023 #define __CONSUMER_H__
00024
00025 #include "globals.h"
00026 #include "queue.h"
00027
00034 class CConsumer : public CBase
00035 {
00036 public:
00037 static CConsumer* NewL(CConsoleBase* aConsole,CQueue* aTokens);
00038 void ConstructL(CConsoleBase* aConsole,CQueue* aTokens);
00039 static TInt ConsThreadFunc(TAny* aPtr);
00040 void ResumeCons();
00041 void Consume();
00042 ~CConsumer();
00043 static TInt RemoveFunction(TAny* aPtr);
00044 private:
00045 CConsumer();
00046 private:
00052 CQueue* iQueue;
00057 RThread iConsThread;
00063 CPeriodic* iPeriodicCons;
00067 CConsoleBase* iConsole;
00068 };
00069
00070 #endif