29 lines
824 B
C++
29 lines
824 B
C++
/*
|
|
* LogProvider.cpp
|
|
*
|
|
* Created on: 23 èþë. 2020 ã.
|
|
* Author: LeonidTitov
|
|
*/
|
|
|
|
#include "LogProvider.hh"
|
|
|
|
bool application::log::LogProvider::input( Environment & env ) {
|
|
|
|
return ( on_conter = env.signals.get( links.on_counter ) )
|
|
and grab( memory, env.rholder.getShared<std::pmr::memory_resource>( links.object_memory ) );
|
|
|
|
}
|
|
|
|
void application::log::LogProvider::build( Environment & env ) {
|
|
|
|
typedef logging::LoggerProvider LP;
|
|
|
|
uint32_t on_off = *on_conter;
|
|
uint16_t global_permission_policy = (config.allow_information_log << 2) | (config.allow_critical_log << 1) | config.allow_error_log;
|
|
|
|
LP * lp = memories::instance_object<LP>(env.static_object_ma,memory, global_permission_policy, on_off);
|
|
|
|
env.rholder.share<logging::LoggerProviderMethods>( *lp, links.provider );
|
|
|
|
}
|