Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
config-facade.h
Go to the documentation of this file.
1/*
2 CONFIGFACADE - C++ convenience wrapper and startup of the config system
3
4 Copyright (C)
5 2008, Hermann Vosseler <Ichthyostega@web.de>
6
7  **Lumiera** is free software; you can redistribute it and/or modify it
8  under the terms of the GNU General Public License as published by the
9  Free Software Foundation; either version 2 of the License, or (at your
10  option) any later version. See the file COPYING for further details.
11
12*/
13
37#ifndef INTERFACE_CONFIGFACADE_H
38#define INTERFACE_CONFIGFACADE_H
39
40
41
42
43
44#ifdef __cplusplus /* ============== C++ Interface ================= */
45
46#include "lib/depend.hpp"
47#include "lib/symbol.hpp"
48
49#include <string>
50
51
52namespace lumiera {
53
54 using std::string;
55
56
57 /*****************************************************************/
64 class Config
65 {
66 public:
67 static string get (lib::Literal key);
68
70
71
72 private:
73 Config();
75 friend class lib::DependencyFactory<Config>;
76 };
77
78
79
80} // namespace lumiera
81
82
83
84#else /* =========================== C Interface ====================== */
85
86
94
95
96#endif
97#endif
Access point to singletons and other kinds of dependencies designated by type.
Definition depend.hpp:281
Helper to abstract creation and lifecycle of a dependency.
Definition depend.hpp:127
Inline string literal.
Definition symbol.hpp:78
C++ wrapper for convenient access to the Lumiera config system.
static string get(lib::Literal key)
static lib::Depend< Config > instance
storage and setup for the single system-wide config facade instance
const char * lumiera_get_plugin_path_default()
Singleton services and Dependency Injection.
Lumiera public interface.
Definition advice.hpp:102
Marker types to indicate a literal string and a Symbol.