diff options
author | Mike Buland <eichlan@xagasoft.com> | 2006-10-31 00:31:43 +0000 |
---|---|---|
committer | Mike Buland <eichlan@xagasoft.com> | 2006-10-31 00:31:43 +0000 |
commit | 58cccdbe67f6e1966116b3d2f4c83d77863daadc (patch) | |
tree | 1b8f82cfc0e986dacb504818052ef13bc4b55bcf /src/linkmessenger.cpp | |
parent | fa6e658f87726b4108e8019805a2b3387d6d8517 (diff) | |
download | libbu++-58cccdbe67f6e1966116b3d2f4c83d77863daadc.tar.gz libbu++-58cccdbe67f6e1966116b3d2f4c83d77863daadc.tar.bz2 libbu++-58cccdbe67f6e1966116b3d2f4c83d77863daadc.tar.xz libbu++-58cccdbe67f6e1966116b3d2f4c83d77863daadc.zip |
Added the new linkmessenger class that will act as a base-class for anything
that wants to send messages to a containing programlink.
Also fiddled with other things...aparently.
Diffstat (limited to '')
-rw-r--r-- | src/linkmessenger.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/linkmessenger.cpp b/src/linkmessenger.cpp new file mode 100644 index 0000000..3bd401a --- /dev/null +++ b/src/linkmessenger.cpp | |||
@@ -0,0 +1,41 @@ | |||
1 | #include "linkmessenger.h" | ||
2 | |||
3 | LinkMessenger::LinkMessenger() : | ||
4 | pFirst( NULL ), | ||
5 | pLast( NULL ) | ||
6 | { | ||
7 | } | ||
8 | |||
9 | LinkMessenger::~LinkMessenger() | ||
10 | { | ||
11 | } | ||
12 | |||
13 | void LinkMessenger::enqueueMessage( LinkMessage *pMsg ) | ||
14 | { | ||
15 | if( pLast == NULL ) | ||
16 | { | ||
17 | pFirst = pLast = new Link; | ||
18 | pLast->pMsg = pMsg; | ||
19 | pLast->pNext = NULL; | ||
20 | } | ||
21 | else | ||
22 | { | ||
23 | pLast->pNext = new Link; | ||
24 | pLast = pLast->pNext; | ||
25 | pLast->pMsg = pMsg; | ||
26 | pLast->pNext = NULL; | ||
27 | } | ||
28 | } | ||
29 | |||
30 | LinkMessage *LinkMessenger::dequeueMessage() | ||
31 | { | ||
32 | if( pFirst == NULL ) | ||
33 | return NULL; | ||
34 | |||
35 | Link *pTmp = pFirst; | ||
36 | pFirst = pFirst->pNext; | ||
37 | LinkMessage *pRet = pTmp->pMsg; | ||
38 | delete pTmp; | ||
39 | return pRet; | ||
40 | } | ||
41 | |||