examples/Base/IPC/condvar/condvarlocal/inc/producer.h

Go to the documentation of this file.
00001 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
00002 // All rights reserved.
00003 // This component and the accompanying materials are made available
00004 // under the terms of "Eclipse Public License v1.0"
00005 // which accompanies this distribution, and is available
00006 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
00007 //
00008 // Initial Contributors:
00009 // Nokia Corporation - initial contribution.
00010 //
00011 // Contributors:
00012 //
00013 // Description:
00014 // Contains the definition of the CProducer class.
00015 //
00016 
00017 
00018 
00022 #ifndef __PRODUCER_H__
00023 #define __PRODUCER_H__
00024 
00025 #include "globals.h"
00026 #include "queue.h"
00027 
00034 class CProducer : public CBase
00035         {
00036 public:
00037         static CProducer* NewL(CConsoleBase* aConsole,CQueue* aTokens);
00038         void ConstructL(CConsoleBase* aConsole,CQueue* aTokens);
00039         static TInt ProdThreadFunc(TAny* aPtr);
00040         void ResumeProd();
00041         void Display();
00042         void Produce();
00043         ~CProducer();
00044         static TInt InsertFunction(TAny* aPtr);
00045 private:
00046         CProducer();
00047 private:
00053         CQueue* iQueue;
00058         RThread iProdThread;
00064         CPeriodic* iPeriodicProd;
00068         CConsoleBase* iConsole;
00069         };
00070 
00071 #endif

Generated by  doxygen 1.6.2