LogService
libdadi: utility tools for distributed applications
SendThread.hh
1 /****************************************************************************/
2 /* A thread that continously empties the tools outbuffers by sending them */
3 /* to the corresponding toolMsgReceiver. Based on omni_thread and the orb. */
4 /* Attention: causes memory leaks if the orb does not exist !! */
5 /* */
6 /* Author(s): */
7 /* - Georg Hoesch (hoesch@in.tum.de) */
8 /* - Cyrille Pontvieux (cyrille.pontvieux@edu.univ-fcomte.fr) */
9 /* */
10 /* This file is part of DIET . */
11 /* */
12 /* Copyright (C) 2000-2003 ENS Lyon, LIFC, INSA, INRIA and SysFera (2000) */
13 /* */
14 /* - Frederic.Desprez@ens-lyon.fr (Project Manager) */
15 /* - Eddy.Caron@ens-lyon.fr (Technical Manager) */
16 /* - Tech@sysfera.com (Maintainer and Technical Support) */
17 /* */
18 /* This software is a computer program whose purpose is to provide an */
19 /* distributed logging services. */
20 /* */
21 /* */
22 /* This software is governed by the CeCILL license under French law and */
23 /* abiding by the rules of distribution of free software. You can use, */
24 /* modify and/ or redistribute the software under the terms of the CeCILL */
25 /* license as circulated by CEA, CNRS and INRIA at the following URL */
26 /* "http://www.cecill.info". */
27 /* */
28 /* As a counterpart to the access to the source code and rights to copy, */
29 /* modify and redistribute granted by the license, users are provided */
30 /* only with a limited warranty and the software's author, the holder */
31 /* of the economic rights, and the successive licensors have only */
32 /* limited liability. */
33 /* */
34 /* In this respect, the user's attention is drawn to the risks */
35 /* associated with loading, using, modifying and/or developing or */
36 /* reproducing the software by the user in light of its specific status */
37 /* of free software, that may mean that it is complicated to */
38 /* manipulate, and that also therefore means that it is reserved for */
39 /* developers and experienced professionals having in-depth computer */
40 /* knowledge. Users are therefore encouraged to load and test the */
41 /* software's suitability as regards their requirements in conditions */
42 /* enabling the security of their systems and/or data to be ensured and, */
43 /* more generally, to use and operate it in the same conditions as */
44 /* regards security. */
45 /* */
46 /* The fact that you are presently reading this means that you have had */
47 /* knowledge of the CeCILL license and that you accept its terms. */
48 /* */
49 /****************************************************************************/
50 /* $Id$
51  * $Log$
52  * Revision 1.1 2004/01/09 11:07:12 ghoesch
53  * Restructured the whole LogService source tree.
54  * Added autotools make process. Cleaned up code.
55  * Removed some testers. Ready to release.
56  *
57  ***************************************************************************/
58 
59 #ifndef _SENDTHREAD_HH_
60 #define _SENDTHREAD_HH_
61 
62 #include <omnithread.h>
63 #include "ToolList.hh"
64 #include "LogTool.hh"
65 
66 class SendThread: public omni_thread {
67 public:
74  explicit SendThread(ToolList* toolList);
75 
79  void
80  startThread();
81 
87  void
88  stopThread();
89 
90 protected:
96  void*
97  run_undetached(void* arg);
98 
105  ~SendThread();
106 
107 private:
113  bool runSendThread;
114 
118  ToolList* toolList;
119 };
120 
121 #endif
Definition: SendThread.hh:66
void startThread()
SendThread(ToolList *toolList)
void stopThread()
Definition: FullLinkedList.hh:88
void * run_undetached(void *arg)