|
opm-simulators
|
Guard for managing DeferredLogger lifecycle in ReservoirCoupling. More...
#include <ReservoirCoupling.hpp>
Public Member Functions | |
| ScopedLoggerGuard (Logger &logger, DeferredLogger *deferred_logger) | |
| ScopedLoggerGuard (const ScopedLoggerGuard &)=delete | |
| ScopedLoggerGuard & | operator= (const ScopedLoggerGuard &)=delete |
| ScopedLoggerGuard (ScopedLoggerGuard &&other) noexcept | |
| ScopedLoggerGuard & | operator= (ScopedLoggerGuard &&other) noexcept |
Guard for managing DeferredLogger lifecycle in ReservoirCoupling.
This class ensures that a DeferredLogger pointer is properly set and cleared in the ReservoirCoupling logger. It follows the RAII (Resource Acquisition Is Initialization) pattern to prevent dangling pointer issues when local DeferredLogger objects go out of scope.
Lifecycle guarantees:
| logger | The ReservoirCoupling logger (either master or slave) |
| deferred_logger | The DeferredLogger to bind to the ReservoirCoupling logger |
Example usage: