aboutsummaryrefslogtreecommitdiff
path: root/include/olm/logging.h
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2016-05-13 11:53:33 +0100
committerRichard van der Hoff <richard@matrix.org>2016-05-16 11:05:57 +0100
commitb3db0e6ee14315d20ca91eff91e348e18dd119e6 (patch)
treeafe3cea009a51309f034ddb0ca14a069262f71c4 /include/olm/logging.h
parent48cb5f925d3bf21c51818dbe46c864a6975ccc75 (diff)
translate logging.cpp to C
Diffstat (limited to 'include/olm/logging.h')
-rw-r--r--include/olm/logging.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/include/olm/logging.h b/include/olm/logging.h
new file mode 100644
index 0000000..c713992
--- /dev/null
+++ b/include/olm/logging.h
@@ -0,0 +1,44 @@
+/* Copyright 2016 OpenMarket Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef OLM_LOGGING_H_
+#define OLM_LOGGING_H_
+
+#include "olm/olm.hh"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define OLM_LOG_FATAL 1
+#define OLM_LOG_ERROR 2
+#define OLM_LOG_WARNING 3
+#define OLM_LOG_INFO 4
+#define OLM_LOG_DEBUG 5
+#define OLM_LOG_TRACE 6
+
+/* returns non-zero if logging is enabled for this level */
+int olm_log_enabled_for(unsigned int level, const char *category);
+
+__attribute__((__format__ (__printf__, 3, 4)))
+void olm_logf(unsigned int level, const char *category,
+ const char *format, ...);
+
+
+#ifdef __cplusplus
+} // extern "C"
+#endif
+
+#endif /* OLM_LOGGING_H_ */