LCOV - code coverage report
Current view: top level - libMagAOX/logger/types - text_log.hpp (source / functions) Coverage Total Hit
Test: MagAOX Lines: 80.0 % 5 4
Test Date: 2026-01-03 21:03:39 Functions: 100.0 % 1 1

            Line data    Source code
       1              : /** \file text_log.hpp
       2              :   * \brief The MagAO-X logger text_log log type.
       3              :   * \author Jared R. Males (jaredmales@gmail.com)
       4              :   *
       5              :   * \ingroup logger_types_files
       6              :   *
       7              :   * History:
       8              :   * - 2018-08-18 created by JRM
       9              :   */
      10              : #ifndef logger_types_text_log_hpp
      11              : #define logger_types_text_log_hpp
      12              : 
      13              : #include "string_log.hpp"
      14              : 
      15              : namespace MagAOX
      16              : {
      17              : namespace logger
      18              : {
      19              : 
      20              : ///A simple text log, a string-type log.
      21              : /** \ingroup logger_types
      22              :   */
      23              : struct text_log : public string_log
      24              : {
      25              :    ///The event code
      26              :    static const flatlogs::eventCodeT eventCode = eventCodes::TEXT_LOG;
      27              : 
      28              :    ///The default level
      29              :    static const flatlogs::logPrioT defaultLevel = flatlogs::logPrio::LOG_INFO;
      30              : 
      31              :    /// Get the logMetaDetail for a member by name
      32              :     /**
      33              :      * \returns the a logMetaDetail filled in with the appropriate details
      34              :      * \returns an empty logMetaDetail if member not recognized
      35              :      */
      36            1 :     static logMetaDetail getAccessor( const std::string &member /**< [in] the name of the member */ )
      37              :     {
      38            1 :         if( member == "message" )
      39              :         {
      40              :             return logMetaDetail( { "TEXT",
      41              :                                     "log message",
      42              :                                     logMeta::valTypes::String,
      43              :                                     logMeta::metaTypes::State,
      44              :                                     reinterpret_cast<void *>( &message ),
      45            0 :                                     false } );
      46              :         }
      47              :         else
      48              :         {
      49            1 :             std::cerr << "No member " << member << " in text_log\n";
      50            1 :             return logMetaDetail();
      51              :         }
      52              :     }
      53              : };
      54              : 
      55              : 
      56              : 
      57              : } //namespace logger
      58              : } //namespace MagAOX
      59              : 
      60              : #endif //logger_types_text_log_hpp
        

Generated by: LCOV version 2.0-1