first check-in of feisty meow codebase. many things broken still due to recent
[feisty_meow.git] / core / library / loggers / logging_filters.h
1 #ifndef LOGGING_FILTERS_GROUP
2 #define LOGGING_FILTERS_GROUP
3
4 //////////////
5 // Name   : logging_filters
6 // Author : Chris Koeritz
7 //////////////
8 // Copyright (c) 2010-$now By Author.  This program is free software; you can
9 // redistribute it and/or modify it under the terms of the GNU General Public
10 // License as published by the Free Software Foundation:
11 //     http://www.gnu.org/licenses/gpl.html
12 // or under the terms of the GNU Library license:
13 //     http://www.gnu.org/licenses/lgpl.html
14 // at your preference.  Those licenses describe your legal rights to this
15 // software, and no other rights or warranties apply.
16 // Please send updates for this code to: fred@gruntose.com -- Thanks, fred.
17 //////////////
18
19 #include <basis/contracts.h>
20
21 namespace loggers {
22
23   enum logging_filters {
24     // synonyms for filters that are important enough to always show.
25     FILT_FATAL = basis::ALWAYS_PRINT,
26     FILT_ERROR = basis::ALWAYS_PRINT,
27     // the first really selectable filters follow...  one might notice a
28     // small similarity to levels available with log4j.
29     DEFINE_FILTER(FILT_WARNING, 1, "Important or unusual condition occurred in the runtime."),
30     DEFINE_FILTER(FILT_INFO, 2, "Information from normal runtime activities."),
31     DEFINE_FILTER(FILT_DEBUG, 3, "Noisy debugging information from objects."),
32     // occasionally useful filters for locally defined categories.
33     DEFINE_FILTER(FILT_UNUSUAL, 4, "Unusual but not necessarily erroneous events."),
34     DEFINE_FILTER(FILT_NETWORK, 5, "Network activity and events."),
35     DEFINE_FILTER(FILT_DATABASE, 6, "Data storage activities or warnings.")
36   };
37
38 } //namespace.
39
40 #endif
41