Lumiera  0.pre.03
»edit your freedom«
error-log.hpp
Go to the documentation of this file.
1 /*
2  ERROR-LOG.hpp - Entity to collect and persist incident records
3 
4  Copyright (C)
5  2018, 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 
14 
30 #ifndef ASSET_META_ERROR_LOG_H
31 #define ASSET_META_ERROR_LOG_H
32 
33 #include "steam/asset/meta.hpp"
34 #include "lib/idi/entry-id.hpp"
35 //#include "lib/time/timevalue.hpp"
36 //#include "lib/symbol.hpp"
37 
38 #include <string>
39 
40 
41 
42 namespace steam {
43 namespace asset{
44 namespace meta {
45 
46  using std::string;
47 // using lib::Symbol;
48 // using lib::time::Time;
49 // using lib::time::TimeVar;
50 // using lib::time::TimeValue;
51 
52 
53  class ErrorLog;
54  using PLog = lib::P<ErrorLog>;
55  using LogID = lib::idi::EntryID<ErrorLog>;
56 
57  extern LogID theErrorLog_ID;
58 
59 
65  class ErrorLog
66  : public Meta
67  {
68 
69  public:
73  static PLog global();
74 
75  protected:
76  ErrorLog (LogID const&);
77 
78  friend class Builder<ErrorLog>;
79  };
80 
81 
82 
83 
84 
85  template<>
86  struct Builder<ErrorLog>
87  {
88  string nameID;
92  Builder(string name)
93  : nameID{name}
94  { }
95 
99  lib::P<ErrorLog> commit();
100 
101  };
102 
103 }}} // namespace steam::asset::meta
104 #endif /*ASSET_META_ERROR_LOG_H*/
key abstraction: metadata, parametrisation, customisation and similar organisational traits...
Definition: asset/meta.hpp:109
typed symbolic and hash ID for asset-like position accounting.
Definition: entry-id.hpp:126
Steam-Layer implementation namespace root.
Internal and organisational metadata.
static PLog global()
retrieve (possibly create) the global singleton asset corresponding to "the" global error log...
Definition: error-log.cpp:58
lib::idi::EntryID< ErrorLog > theErrorLog_ID
storage for an unique, globally known ID.
Definition: error-log.cpp:48
Bare symbolic and hash ID used for accounting of asset like entries.
Building and configuring a meta asset.
Definition: asset/meta.hpp:100
Customised refcounting smart pointer template, built upon std::shared_ptr, but forwarding type relati...
Definition: trait.hpp:71
The asset subsystem of the Steam-Layer.
Definition: wrapperptr.hpp:35
Receive, collect, filter and possibly persist incident records.
Definition: error-log.hpp:65
ElementBoxWidget::Config::Qualifier name(string id)
define the name-ID displayed in the caption