module puppeteer.logging.i_puppeteer_logger; shared interface IPuppeteerLogger { void logSensor(long timeMs, string sensorName, string readValue, string adaptedValue); void logInfo(long timeMs, string info); static auto getInstance(string loggingPath) { version(unittest) { import test.puppeteer.logging.mock_logger; return new shared MockLogger; } else version(gnuplotCrafterLogging) { import puppeteer.logging.multifile_gnuplot_crafter_logger; return new shared MultifileGnuplotCrafterLogger!(5)(loggingPath); } else { import puppeteer.logging.puppeteer_logger; return new shared PuppeteerLogger(loggingPath); } } }