Add GNU LGPL headers to all .c .C and .h files
[oweals/cde.git] / cde / lib / tt / lib / mp / mp_c_mp.h
1 /*
2  * CDE - Common Desktop Environment
3  *
4  * Copyright (c) 1993-2012, The Open Group. All rights reserved.
5  *
6  * These libraries and programs are free software; you can
7  * redistribute them and/or modify them under the terms of the GNU
8  * Lesser General Public License as published by the Free Software
9  * Foundation; either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * These libraries and programs are distributed in the hope that
13  * they will be useful, but WITHOUT ANY WARRANTY; without even the
14  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15  * PURPOSE. See the GNU Lesser General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with these librararies and programs; if not, write
20  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21  * Floor, Boston, MA 02110-1301 USA
22  */
23 /*%%  (c) Copyright 1993, 1994 Hewlett-Packard Company                   */
24 /*%%  (c) Copyright 1993, 1994 International Business Machines Corp.     */
25 /*%%  (c) Copyright 1993, 1994 Sun Microsystems, Inc.                    */
26 /*%%  (c) Copyright 1993, 1994 Novell, Inc.                              */
27 /*%%  $XConsortium: mp_c_mp.h /main/5 1995/11/28 19:27:40 cde-sun $                                                      */
28
29 /* 
30  * mp_c_mp.h
31  * 
32  * Copyright (c) 1992 by Sun Microsystems, Inc.
33  * 
34  * This file declares the _Tt_c_mp object which represents the client-only
35  * global information for the MP component. There should only be one instance
36  * of a _Tt_mp object in either server or client mode.
37  */
38 #ifndef _MP_C_MP_H
39 #define _MP_C_MP_H
40
41 #include "mp/mp.h"
42 #include "mp/mp_c_session_utils.h"
43 #include "mp/mp_c_procid_utils.h"
44
45 class _Tt_c_mp : public _Tt_mp {
46       public:
47         _Tt_c_mp();
48         virtual ~_Tt_c_mp();
49         Tt_status                       c_init();
50         Tt_status                       set_default_procid(_Tt_string id,
51                                                            int thread_only = 0);
52         _Tt_procid_ptr                  &default_procid();
53         _Tt_c_procid_ptr                &default_c_procid();
54         Tt_status                       create_new_procid();
55         Tt_status                       c_remove_procid(_Tt_procid_ptr &proc);
56         _Tt_c_session_ptr               initial_c_session;
57         int                             procid_count();
58 #ifdef OPT_XTHREADS
59         void                            set_multithreaded();
60 #endif
61
62         _Tt_c_session_ptr               default_c_session;
63
64       protected:
65         _Tt_c_procid_ptr                _default_c_procid;
66 };
67         
68 #endif                          /* _MP_C_MP_H */