libimgdoc2
Loading...
Searching...
No Matches
IEnvironment.h
1// SPDX-FileCopyrightText: 2023 Carl Zeiss Microscopy GmbH
2//
3// SPDX-License-Identifier: MIT
4
5#pragma once
6
7namespace imgdoc2
8{
13 {
14 public:
20 virtual void Log(int level, const char* message) = 0;
21
26 virtual bool IsLogLevelActive(int level) = 0;
27
31 virtual void ReportFatalErrorAndExit(const char* message) = 0;
32
33 virtual ~IHostingEnvironment() = default;
34 public:
35 // no copy and no move
36 IHostingEnvironment() = default;
37 IHostingEnvironment(const IHostingEnvironment&) = delete; // copy constructor
38 IHostingEnvironment& operator=(const IHostingEnvironment&) = delete; // copy assignment
39 IHostingEnvironment(IHostingEnvironment&&) = delete; // move constructor
40 IHostingEnvironment& operator=(IHostingEnvironment&&) = delete; // move assignment
41 };
42}
Definition: IEnvironment.h:13
virtual void ReportFatalErrorAndExit(const char *message)=0
virtual void Log(int level, const char *message)=0
virtual bool IsLogLevelActive(int level)=0