]> Dogcows Code - chaz/yoink/blob - src/moof/backend.hh
remove some unused stlplus modules
[chaz/yoink] / src / moof / backend.hh
1
2 /*] Copyright (c) 2009-2011, Charles McGarvey [*****************************
3 **] All rights reserved.
4 *
5 * Distributable under the terms and conditions of the 2-clause BSD license;
6 * see the file COPYING for a complete text of the license.
7 *
8 *****************************************************************************/
9
10 #ifndef _MOOF_BACKEND_HH_
11 #define _MOOF_BACKEND_HH_
12
13 /**
14 * \file backend.hh
15 * Initialize the backend libraries and subsystems.
16 */
17
18
19 namespace moof {
20
21
22 /**
23 * Some classes and subsystems require certain backend libraries to be
24 * initialized. This is the mechanism to accomplish that. Classes which rely
25 * on any backend libraries just need to instantiate this class as a member.
26 * Backend cleanup will occur automagically when there are no more instances.
27 */
28 class backend
29 {
30 public:
31
32 /**
33 * Construct a backend reference, initializing the backend if it
34 * hasn't already been initialized.
35 */
36 backend();
37
38 /**
39 * Get whether or not the backend has been initialized.
40 * \return True if the backend is initialized, false otherwise.
41 */
42 static bool is_initialized();
43
44 /* The rest of this stuff is to implement the reference counting. */
45
46 backend(const backend& backend);
47 backend& operator = (const backend& backend);
48 ~backend();
49 };
50
51
52 } // namespace moof
53
54 #endif // _MOOF_BACKEND_HH_
55
This page took 0.030957 seconds and 4 git commands to generate.