Public Member Functions | |
void | ConstructL (CConsoleBase *aConsole, CQueue *aTokens) |
void | ResumeProd () |
void | Display () |
void | Produce () |
~CProducer () | |
Static Public Member Functions | |
static CProducer * | NewL (CConsoleBase *aConsole, CQueue *aTokens) |
static TInt | ProdThreadFunc (TAny *aPtr) |
static TInt | InsertFunction (TAny *aPtr) |
This class owns the producer thread. It provides an interface to insert tokens into the CQueue::iArray queue.
Definition at line 34 of file producer.h.
CProducer::~CProducer | ( | ) |
Destructor.
Definition at line 146 of file producer.cpp.
Performs the two-phase construction of an object of the CProducer class.
aConsole | The console object. | |
aTokens | A pointer to the CQueue object containing the tokens' queue. |
Definition at line 31 of file producer.cpp.
void CProducer::ConstructL | ( | CConsoleBase * | aConsole, | |
CQueue * | aTokens | |||
) |
The second phase constructor of the CProducer class. It creates the following member objects of the class:
aConsole | The console object. | |
aTokens | A pointer to the CQueue object containing the tokens' queue. |
Definition at line 51 of file producer.cpp.
TInt CProducer::ProdThreadFunc | ( | TAny * | aPtr | ) | [static] |
The producer thread function. It inserts a token into the queue.
aPtr | A pointer to the arguments passed to the thread function. |
Definition at line 109 of file producer.cpp.
void CProducer::ResumeProd | ( | ) |
Resumes the execution of the producer thread.
Definition at line 127 of file producer.cpp.
void CProducer::Display | ( | ) |
Displays the contents of the queue.
Definition at line 79 of file producer.cpp.
void CProducer::Produce | ( | ) |
Produce a token.
Definition at line 137 of file producer.cpp.
TInt CProducer::InsertFunction | ( | TAny * | aPtr | ) | [static] |
The call back function associated with the CPeriodic object of the CProducer class.
Definition at line 158 of file producer.cpp.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.