This is a more sophisticated logging facility that consumes more descriptive event objects.

C# | Visual Basic | Managed C++ |
IEventLogger EventLogger { get; }
ReadOnly Property EventLogger As IEventLogger
property IEventLogger^ EventLogger { IEventLogger^ get (); }