LCOV - code coverage report
Current view: top level - util/cgm - CubitMessage.hpp (source / functions) Hit Total Coverage
Test: coverage_sk.info Lines: 2 21 9.5 %
Date: 2020-06-30 00:58:45 Functions: 1 12 8.3 %
Branches: 0 0 -

           Branch data     Line data    Source code
       1                 :            : //- Class: CubitMessage
       2                 :            : //- Description: CubitMessage class - used for reporting messages to
       3                 :            : //-              the user
       4                 :            : //- Owner: Tim Tautges
       5                 :            : //- Checked By:
       6                 :            : //- Version:
       7                 :            : 
       8                 :            : #ifndef CUBITMESSAGE_HPP
       9                 :            : #define CUBITMESSAGE_HPP
      10                 :            : 
      11                 :            : // *****************
      12                 :            : // Class Declaration
      13                 :            : // *****************
      14                 :            : 
      15                 :            : #include <fstream>
      16                 :            : 
      17                 :            : #include <cstdarg>
      18                 :            : #include "CubitDefines.h"
      19                 :            : #include "CGMUtilConfigure.h"
      20                 :            : #include "CubitString.hpp"
      21                 :            : #include "CubitMessageHandler.hpp"
      22                 :            : 
      23                 :            : // CUBIT debug flags; see CubitMessage.cc for a definition of each flag
      24                 :            : 
      25                 :            : #define CUBIT_ERROR                        0
      26                 :            : #define CUBIT_WARNING                      1
      27                 :            : #define CUBIT_INFO                         2
      28                 :            : #define CUBIT_DIAGNOSTIC                   3
      29                 :            : #define CUBIT_ERROR_EXPECTED               4
      30                 :            : #define CUBIT_DEBUG_1                     11
      31                 :            : 
      32                 :            : #define PRINT_DEBUG_1(...) PRINT_DEBUG(1, __VA_ARGS__)
      33                 :            : #define PRINT_DEBUG_2(...) PRINT_DEBUG(2, __VA_ARGS__)
      34                 :            : #define PRINT_DEBUG_3(...) PRINT_DEBUG(3, __VA_ARGS__)
      35                 :            : #define PRINT_DEBUG_4(...) PRINT_DEBUG(4, __VA_ARGS__)
      36                 :            : #define PRINT_DEBUG_5(...) PRINT_DEBUG(5, __VA_ARGS__)
      37                 :            : #define PRINT_DEBUG_6(...) PRINT_DEBUG(6, __VA_ARGS__)
      38                 :            : #define PRINT_DEBUG_7(...) PRINT_DEBUG(7, __VA_ARGS__)
      39                 :            : #define PRINT_DEBUG_8(...) PRINT_DEBUG(8, __VA_ARGS__)
      40                 :            : #define PRINT_DEBUG_9(...) PRINT_DEBUG(9, __VA_ARGS__)
      41                 :            : #define PRINT_DEBUG_10(...) PRINT_DEBUG(10, __VA_ARGS__)
      42                 :            : #define PRINT_DEBUG_11(...) PRINT_DEBUG(11, __VA_ARGS__)
      43                 :            : #define PRINT_DEBUG_12(...) PRINT_DEBUG(12, __VA_ARGS__)
      44                 :            : #define PRINT_DEBUG_13(...) PRINT_DEBUG(13, __VA_ARGS__)
      45                 :            : #define PRINT_DEBUG_14(...) PRINT_DEBUG(14, __VA_ARGS__)
      46                 :            : #define PRINT_DEBUG_15(...) PRINT_DEBUG(15, __VA_ARGS__)
      47                 :            : #define PRINT_DEBUG_16(...) PRINT_DEBUG(16, __VA_ARGS__)
      48                 :            : #define PRINT_DEBUG_17(...) PRINT_DEBUG(17, __VA_ARGS__)
      49                 :            : #define PRINT_DEBUG_18(...) PRINT_DEBUG(18, __VA_ARGS__)
      50                 :            : #define PRINT_DEBUG_19(...) PRINT_DEBUG(19, __VA_ARGS__)
      51                 :            : #define PRINT_DEBUG_20(...) PRINT_DEBUG(20, __VA_ARGS__)
      52                 :            : #define PRINT_DEBUG_21(...) PRINT_DEBUG(21, __VA_ARGS__)
      53                 :            : #define PRINT_DEBUG_22(...) PRINT_DEBUG(22, __VA_ARGS__)
      54                 :            : #define PRINT_DEBUG_23(...) PRINT_DEBUG(23, __VA_ARGS__)
      55                 :            : #define PRINT_DEBUG_24(...) PRINT_DEBUG(24, __VA_ARGS__)
      56                 :            : #define PRINT_DEBUG_25(...) PRINT_DEBUG(25, __VA_ARGS__)
      57                 :            : #define PRINT_DEBUG_26(...) PRINT_DEBUG(26, __VA_ARGS__)
      58                 :            : #define PRINT_DEBUG_27(...) PRINT_DEBUG(27, __VA_ARGS__)
      59                 :            : #define PRINT_DEBUG_28(...) PRINT_DEBUG(28, __VA_ARGS__)
      60                 :            : #define PRINT_DEBUG_29(...) PRINT_DEBUG(29, __VA_ARGS__)
      61                 :            : #define PRINT_DEBUG_30(...) PRINT_DEBUG(30, __VA_ARGS__)
      62                 :            : #define PRINT_DEBUG_31(...) PRINT_DEBUG(31, __VA_ARGS__)
      63                 :            : #define PRINT_DEBUG_32(...) PRINT_DEBUG(32, __VA_ARGS__)
      64                 :            : #define PRINT_DEBUG_33(...) PRINT_DEBUG(33, __VA_ARGS__)
      65                 :            : #define PRINT_DEBUG_34(...) PRINT_DEBUG(34, __VA_ARGS__)
      66                 :            : #define PRINT_DEBUG_35(...) PRINT_DEBUG(35, __VA_ARGS__)
      67                 :            : #define PRINT_DEBUG_36(...) PRINT_DEBUG(36, __VA_ARGS__)
      68                 :            : #define PRINT_DEBUG_37(...) PRINT_DEBUG(37, __VA_ARGS__)
      69                 :            : #define PRINT_DEBUG_38(...) PRINT_DEBUG(38, __VA_ARGS__)
      70                 :            : #define PRINT_DEBUG_39(...) PRINT_DEBUG(39, __VA_ARGS__)
      71                 :            : #define PRINT_DEBUG_40(...) PRINT_DEBUG(40, __VA_ARGS__)
      72                 :            : #define PRINT_DEBUG_41(...) PRINT_DEBUG(41, __VA_ARGS__)
      73                 :            : #define PRINT_DEBUG_42(...) PRINT_DEBUG(42, __VA_ARGS__)
      74                 :            : #define PRINT_DEBUG_43(...) PRINT_DEBUG(43, __VA_ARGS__)
      75                 :            : #define PRINT_DEBUG_44(...) PRINT_DEBUG(44, __VA_ARGS__)
      76                 :            : #define PRINT_DEBUG_45(...) PRINT_DEBUG(45, __VA_ARGS__)
      77                 :            : #define PRINT_DEBUG_46(...) PRINT_DEBUG(46, __VA_ARGS__)
      78                 :            : #define PRINT_DEBUG_47(...) PRINT_DEBUG(47, __VA_ARGS__)
      79                 :            : #define PRINT_DEBUG_48(...) PRINT_DEBUG(48, __VA_ARGS__)
      80                 :            : #define PRINT_DEBUG_49(...) PRINT_DEBUG(49, __VA_ARGS__)
      81                 :            : #define PRINT_DEBUG_50(...) PRINT_DEBUG(50, __VA_ARGS__)
      82                 :            : #define PRINT_DEBUG_51(...) PRINT_DEBUG(51, __VA_ARGS__)
      83                 :            : #define PRINT_DEBUG_52(...) PRINT_DEBUG(52, __VA_ARGS__)
      84                 :            : #define PRINT_DEBUG_53(...) PRINT_DEBUG(53, __VA_ARGS__)
      85                 :            : #define PRINT_DEBUG_54(...) PRINT_DEBUG(54, __VA_ARGS__)
      86                 :            : #define PRINT_DEBUG_55(...) PRINT_DEBUG(55, __VA_ARGS__)
      87                 :            : #define PRINT_DEBUG_56(...) PRINT_DEBUG(56, __VA_ARGS__)
      88                 :            : #define PRINT_DEBUG_57(...) PRINT_DEBUG(57, __VA_ARGS__)
      89                 :            : #define PRINT_DEBUG_58(...) PRINT_DEBUG(58, __VA_ARGS__)
      90                 :            : #define PRINT_DEBUG_59(...) PRINT_DEBUG(59, __VA_ARGS__)
      91                 :            : #define PRINT_DEBUG_60(...) PRINT_DEBUG(60, __VA_ARGS__)
      92                 :            : #define PRINT_DEBUG_61(...) PRINT_DEBUG(61, __VA_ARGS__)
      93                 :            : #define PRINT_DEBUG_62(...) PRINT_DEBUG(62, __VA_ARGS__)
      94                 :            : #define PRINT_DEBUG_63(...) PRINT_DEBUG(63, __VA_ARGS__)
      95                 :            : #define PRINT_DEBUG_64(...) PRINT_DEBUG(64, __VA_ARGS__)
      96                 :            : #define PRINT_DEBUG_65(...) PRINT_DEBUG(65, __VA_ARGS__)
      97                 :            : #define PRINT_DEBUG_66(...) PRINT_DEBUG(66, __VA_ARGS__)
      98                 :            : #define PRINT_DEBUG_67(...) PRINT_DEBUG(67, __VA_ARGS__)
      99                 :            : #define PRINT_DEBUG_68(...) PRINT_DEBUG(68, __VA_ARGS__)
     100                 :            : #define PRINT_DEBUG_69(...) PRINT_DEBUG(69, __VA_ARGS__)
     101                 :            : #define PRINT_DEBUG_70(...) PRINT_DEBUG(70, __VA_ARGS__)
     102                 :            : #define PRINT_DEBUG_71(...) PRINT_DEBUG(71, __VA_ARGS__)
     103                 :            : #define PRINT_DEBUG_72(...) PRINT_DEBUG(72, __VA_ARGS__)
     104                 :            : #define PRINT_DEBUG_73(...) PRINT_DEBUG(73, __VA_ARGS__)
     105                 :            : #define PRINT_DEBUG_74(...) PRINT_DEBUG(74, __VA_ARGS__)
     106                 :            : #define PRINT_DEBUG_75(...) PRINT_DEBUG(75, __VA_ARGS__)
     107                 :            : #define PRINT_DEBUG_76(...) PRINT_DEBUG(76, __VA_ARGS__)
     108                 :            : #define PRINT_DEBUG_77(...) PRINT_DEBUG(77, __VA_ARGS__)
     109                 :            : #define PRINT_DEBUG_78(...) PRINT_DEBUG(78, __VA_ARGS__)
     110                 :            : #define PRINT_DEBUG_79(...) PRINT_DEBUG(79, __VA_ARGS__)
     111                 :            : #define PRINT_DEBUG_80(...) PRINT_DEBUG(80, __VA_ARGS__)
     112                 :            : #define PRINT_DEBUG_81(...) PRINT_DEBUG(81, __VA_ARGS__)
     113                 :            : #define PRINT_DEBUG_82(...) PRINT_DEBUG(82, __VA_ARGS__)
     114                 :            : #define PRINT_DEBUG_83(...) PRINT_DEBUG(83, __VA_ARGS__)
     115                 :            : #define PRINT_DEBUG_84(...) PRINT_DEBUG(84, __VA_ARGS__)
     116                 :            : #define PRINT_DEBUG_85(...) PRINT_DEBUG(85, __VA_ARGS__)
     117                 :            : #define PRINT_DEBUG_86(...) PRINT_DEBUG(86, __VA_ARGS__)
     118                 :            : #define PRINT_DEBUG_87(...) PRINT_DEBUG(87, __VA_ARGS__)
     119                 :            : #define PRINT_DEBUG_88(...) PRINT_DEBUG(88, __VA_ARGS__)
     120                 :            : #define PRINT_DEBUG_89(...) PRINT_DEBUG(89, __VA_ARGS__)
     121                 :            : #define PRINT_DEBUG_90(...) PRINT_DEBUG(90, __VA_ARGS__)
     122                 :            : #define PRINT_DEBUG_91(...) PRINT_DEBUG(91, __VA_ARGS__)
     123                 :            : #define PRINT_DEBUG_92(...) PRINT_DEBUG(92, __VA_ARGS__)
     124                 :            : #define PRINT_DEBUG_93(...) PRINT_DEBUG(93, __VA_ARGS__)
     125                 :            : #define PRINT_DEBUG_94(...) PRINT_DEBUG(94, __VA_ARGS__)
     126                 :            : #define PRINT_DEBUG_95(...) PRINT_DEBUG(95, __VA_ARGS__)
     127                 :            : #define PRINT_DEBUG_96(...) PRINT_DEBUG(96, __VA_ARGS__)
     128                 :            : #define PRINT_DEBUG_97(...) PRINT_DEBUG(97, __VA_ARGS__)
     129                 :            : #define PRINT_DEBUG_98(...) PRINT_DEBUG(98, __VA_ARGS__)
     130                 :            : #define PRINT_DEBUG_99(...) PRINT_DEBUG(99, __VA_ARGS__)
     131                 :            : #define PRINT_DEBUG_100(...) PRINT_DEBUG(100, __VA_ARGS__)
     132                 :            : #define PRINT_DEBUG_101(...) PRINT_DEBUG(101, __VA_ARGS__)
     133                 :            : #define PRINT_DEBUG_102(...) PRINT_DEBUG(102, __VA_ARGS__)
     134                 :            : #define PRINT_DEBUG_103(...) PRINT_DEBUG(103, __VA_ARGS__)
     135                 :            : #define PRINT_DEBUG_104(...) PRINT_DEBUG(104, __VA_ARGS__)
     136                 :            : #define PRINT_DEBUG_105(...) PRINT_DEBUG(105, __VA_ARGS__)
     137                 :            : #define PRINT_DEBUG_106(...) PRINT_DEBUG(106, __VA_ARGS__)
     138                 :            : #define PRINT_DEBUG_107(...) PRINT_DEBUG(107, __VA_ARGS__)
     139                 :            : #define PRINT_DEBUG_108(...) PRINT_DEBUG(108, __VA_ARGS__)
     140                 :            : #define PRINT_DEBUG_109(...) PRINT_DEBUG(109, __VA_ARGS__)
     141                 :            : #define PRINT_DEBUG_110(...) PRINT_DEBUG(110, __VA_ARGS__)
     142                 :            : #define PRINT_DEBUG_111(...) PRINT_DEBUG(111, __VA_ARGS__)
     143                 :            : #define PRINT_DEBUG_112(...) PRINT_DEBUG(112, __VA_ARGS__)
     144                 :            : #define PRINT_DEBUG_113(...) PRINT_DEBUG(113, __VA_ARGS__)
     145                 :            : #define PRINT_DEBUG_114(...) PRINT_DEBUG(114, __VA_ARGS__)
     146                 :            : #define PRINT_DEBUG_115(...) PRINT_DEBUG(115, __VA_ARGS__)
     147                 :            : #define PRINT_DEBUG_116(...) PRINT_DEBUG(116, __VA_ARGS__)
     148                 :            : #define PRINT_DEBUG_117(...) PRINT_DEBUG(117, __VA_ARGS__)
     149                 :            : #define PRINT_DEBUG_118(...) PRINT_DEBUG(118, __VA_ARGS__)
     150                 :            : #define PRINT_DEBUG_119(...) PRINT_DEBUG(119, __VA_ARGS__)
     151                 :            : #define PRINT_DEBUG_120(...) PRINT_DEBUG(120, __VA_ARGS__)
     152                 :            : #define PRINT_DEBUG_121(...) PRINT_DEBUG(121, __VA_ARGS__)
     153                 :            : #define PRINT_DEBUG_122(...) PRINT_DEBUG(122, __VA_ARGS__)
     154                 :            : #define PRINT_DEBUG_123(...) PRINT_DEBUG(123, __VA_ARGS__)
     155                 :            : #define PRINT_DEBUG_124(...) PRINT_DEBUG(124, __VA_ARGS__)
     156                 :            : #define PRINT_DEBUG_125(...) PRINT_DEBUG(125, __VA_ARGS__)
     157                 :            : #define PRINT_DEBUG_126(...) PRINT_DEBUG(126, __VA_ARGS__)
     158                 :            : #define PRINT_DEBUG_127(...) PRINT_DEBUG(127, __VA_ARGS__)
     159                 :            : #define PRINT_DEBUG_128(...) PRINT_DEBUG(128, __VA_ARGS__)
     160                 :            : #define PRINT_DEBUG_129(...) PRINT_DEBUG(129, __VA_ARGS__)
     161                 :            : #define PRINT_DEBUG_130(...) PRINT_DEBUG(130, __VA_ARGS__)
     162                 :            : #define PRINT_DEBUG_131(...) PRINT_DEBUG(131, __VA_ARGS__)
     163                 :            : #define PRINT_DEBUG_132(...) PRINT_DEBUG(132, __VA_ARGS__)
     164                 :            : #define PRINT_DEBUG_133(...) PRINT_DEBUG(133, __VA_ARGS__)
     165                 :            : #define PRINT_DEBUG_134(...) PRINT_DEBUG(134, __VA_ARGS__)
     166                 :            : #define PRINT_DEBUG_135(...) PRINT_DEBUG(135, __VA_ARGS__)
     167                 :            : #define PRINT_DEBUG_136(...) PRINT_DEBUG(136, __VA_ARGS__)
     168                 :            : #define PRINT_DEBUG_137(...) PRINT_DEBUG(137, __VA_ARGS__)
     169                 :            : #define PRINT_DEBUG_138(...) PRINT_DEBUG(138, __VA_ARGS__)
     170                 :            : #define PRINT_DEBUG_139(...) PRINT_DEBUG(139, __VA_ARGS__)
     171                 :            : #define PRINT_DEBUG_140(...) PRINT_DEBUG(140, __VA_ARGS__)
     172                 :            : #define PRINT_DEBUG_141(...) PRINT_DEBUG(141, __VA_ARGS__)
     173                 :            : #define PRINT_DEBUG_142(...) PRINT_DEBUG(142, __VA_ARGS__)
     174                 :            : #define PRINT_DEBUG_143(...) PRINT_DEBUG(143, __VA_ARGS__)
     175                 :            : #define PRINT_DEBUG_144(...) PRINT_DEBUG(144, __VA_ARGS__)
     176                 :            : #define PRINT_DEBUG_145(...) PRINT_DEBUG(145, __VA_ARGS__)
     177                 :            : #define PRINT_DEBUG_146(...) PRINT_DEBUG(146, __VA_ARGS__)
     178                 :            : #define PRINT_DEBUG_147(...) PRINT_DEBUG(147, __VA_ARGS__)
     179                 :            : #define PRINT_DEBUG_148(...) PRINT_DEBUG(148, __VA_ARGS__)
     180                 :            : #define PRINT_DEBUG_149(...) PRINT_DEBUG(149, __VA_ARGS__)
     181                 :            : #define PRINT_DEBUG_150(...) PRINT_DEBUG(150, __VA_ARGS__)
     182                 :            : #define PRINT_DEBUG_151(...) PRINT_DEBUG(151, __VA_ARGS__)
     183                 :            : #define PRINT_DEBUG_152(...) PRINT_DEBUG(152, __VA_ARGS__)
     184                 :            : #define PRINT_DEBUG_153(...) PRINT_DEBUG(153, __VA_ARGS__)
     185                 :            : #define PRINT_DEBUG_154(...) PRINT_DEBUG(154, __VA_ARGS__)
     186                 :            : #define PRINT_DEBUG_155(...) PRINT_DEBUG(155, __VA_ARGS__)
     187                 :            : #define PRINT_DEBUG_156(...) PRINT_DEBUG(156, __VA_ARGS__)
     188                 :            : #define PRINT_DEBUG_157(...) PRINT_DEBUG(157, __VA_ARGS__)
     189                 :            : #define PRINT_DEBUG_158(...) PRINT_DEBUG(158, __VA_ARGS__)
     190                 :            : #define PRINT_DEBUG_159(...) PRINT_DEBUG(159, __VA_ARGS__)
     191                 :            : #define PRINT_DEBUG_160(...) PRINT_DEBUG(160, __VA_ARGS__)
     192                 :            : #define PRINT_DEBUG_161(...) PRINT_DEBUG(161, __VA_ARGS__)
     193                 :            : #define PRINT_DEBUG_162(...) PRINT_DEBUG(162, __VA_ARGS__)
     194                 :            : #define PRINT_DEBUG_163(...) PRINT_DEBUG(163, __VA_ARGS__)
     195                 :            : #define PRINT_DEBUG_164(...) PRINT_DEBUG(164, __VA_ARGS__)
     196                 :            : #define PRINT_DEBUG_165(...) PRINT_DEBUG(165, __VA_ARGS__)
     197                 :            : #define PRINT_DEBUG_166(...) PRINT_DEBUG(166, __VA_ARGS__)
     198                 :            : #define PRINT_DEBUG_167(...) PRINT_DEBUG(167, __VA_ARGS__)
     199                 :            : #define PRINT_DEBUG_168(...) PRINT_DEBUG(168, __VA_ARGS__)
     200                 :            : #define PRINT_DEBUG_169(...) PRINT_DEBUG(169, __VA_ARGS__)
     201                 :            : #define PRINT_DEBUG_170(...) PRINT_DEBUG(170, __VA_ARGS__)
     202                 :            : #define PRINT_DEBUG_171(...) PRINT_DEBUG(171, __VA_ARGS__)
     203                 :            : #define PRINT_DEBUG_172(...) PRINT_DEBUG(172, __VA_ARGS__)
     204                 :            : #define PRINT_DEBUG_173(...) PRINT_DEBUG(173, __VA_ARGS__)
     205                 :            : #define PRINT_DEBUG_174(...) PRINT_DEBUG(174, __VA_ARGS__)
     206                 :            : #define PRINT_DEBUG_175(...) PRINT_DEBUG(175, __VA_ARGS__)
     207                 :            : #define PRINT_DEBUG_176(...) PRINT_DEBUG(176, __VA_ARGS__)
     208                 :            : #define PRINT_DEBUG_177(...) PRINT_DEBUG(177, __VA_ARGS__)
     209                 :            : #define PRINT_DEBUG_178(...) PRINT_DEBUG(178, __VA_ARGS__)
     210                 :            : #define PRINT_DEBUG_179(...) PRINT_DEBUG(179, __VA_ARGS__)
     211                 :            : #define PRINT_DEBUG_180(...) PRINT_DEBUG(180, __VA_ARGS__)
     212                 :            : #define PRINT_DEBUG_181(...) PRINT_DEBUG(181, __VA_ARGS__)
     213                 :            : #define PRINT_DEBUG_182(...) PRINT_DEBUG(182, __VA_ARGS__)
     214                 :            : #define PRINT_DEBUG_183(...) PRINT_DEBUG(183, __VA_ARGS__)
     215                 :            : #define PRINT_DEBUG_184(...) PRINT_DEBUG(184, __VA_ARGS__)
     216                 :            : #define PRINT_DEBUG_185(...) PRINT_DEBUG(185, __VA_ARGS__)
     217                 :            : #define PRINT_DEBUG_186(...) PRINT_DEBUG(186, __VA_ARGS__)
     218                 :            : #define PRINT_DEBUG_187(...) PRINT_DEBUG(187, __VA_ARGS__)
     219                 :            : #define PRINT_DEBUG_188(...) PRINT_DEBUG(188, __VA_ARGS__)
     220                 :            : #define PRINT_DEBUG_189(...) PRINT_DEBUG(189, __VA_ARGS__)
     221                 :            : #define PRINT_DEBUG_190(...) PRINT_DEBUG(190, __VA_ARGS__)
     222                 :            : #define PRINT_DEBUG_191(...) PRINT_DEBUG(191, __VA_ARGS__)
     223                 :            : #define PRINT_DEBUG_192(...) PRINT_DEBUG(192, __VA_ARGS__)
     224                 :            : #define PRINT_DEBUG_193(...) PRINT_DEBUG(193, __VA_ARGS__)
     225                 :            : #define PRINT_DEBUG_194(...) PRINT_DEBUG(194, __VA_ARGS__)
     226                 :            : #define PRINT_DEBUG_195(...) PRINT_DEBUG(195, __VA_ARGS__)
     227                 :            : #define PRINT_DEBUG_196(...) PRINT_DEBUG(196, __VA_ARGS__)
     228                 :            : #define PRINT_DEBUG_197(...) PRINT_DEBUG(197, __VA_ARGS__)
     229                 :            : #define PRINT_DEBUG_198(...) PRINT_DEBUG(198, __VA_ARGS__)
     230                 :            : #define PRINT_DEBUG_199(...) PRINT_DEBUG(199, __VA_ARGS__)
     231                 :            : #define PRINT_DEBUG_200(...) PRINT_DEBUG(200, __VA_ARGS__)
     232                 :            : #define PRINT_DEBUG_201(...) PRINT_DEBUG(201, __VA_ARGS__)
     233                 :            : #define PRINT_DEBUG_202(...) PRINT_DEBUG(202, __VA_ARGS__)
     234                 :            : #define PRINT_DEBUG_203(...) PRINT_DEBUG(203, __VA_ARGS__)
     235                 :            : #define PRINT_DEBUG_204(...) PRINT_DEBUG(204, __VA_ARGS__)
     236                 :            : #define PRINT_DEBUG_205(...) PRINT_DEBUG(205, __VA_ARGS__)
     237                 :            : #define PRINT_DEBUG_206(...) PRINT_DEBUG(206, __VA_ARGS__)
     238                 :            : #define PRINT_DEBUG_207(...) PRINT_DEBUG(207, __VA_ARGS__)
     239                 :            : #define PRINT_DEBUG_208(...) PRINT_DEBUG(208, __VA_ARGS__)
     240                 :            : #define PRINT_DEBUG_209(...) PRINT_DEBUG(209, __VA_ARGS__)
     241                 :            : #define PRINT_DEBUG_210(...) PRINT_DEBUG(210, __VA_ARGS__)
     242                 :            : #define PRINT_DEBUG_211(...) PRINT_DEBUG(211, __VA_ARGS__)
     243                 :            : #define PRINT_DEBUG_212(...) PRINT_DEBUG(212, __VA_ARGS__)
     244                 :            : #define PRINT_DEBUG_213(...) PRINT_DEBUG(213, __VA_ARGS__)
     245                 :            : #define PRINT_DEBUG_214(...) PRINT_DEBUG(214, __VA_ARGS__)
     246                 :            : #define PRINT_DEBUG_215(...) PRINT_DEBUG(215, __VA_ARGS__)
     247                 :            : #define PRINT_DEBUG_216(...) PRINT_DEBUG(216, __VA_ARGS__)
     248                 :            : #define PRINT_DEBUG_217(...) PRINT_DEBUG(217, __VA_ARGS__)
     249                 :            : #define PRINT_DEBUG_218(...) PRINT_DEBUG(218, __VA_ARGS__)
     250                 :            : #define PRINT_DEBUG_219(...) PRINT_DEBUG(219, __VA_ARGS__)
     251                 :            : #define PRINT_DEBUG_220(...) PRINT_DEBUG(220, __VA_ARGS__)
     252                 :            : #define PRINT_DEBUG_221(...) PRINT_DEBUG(221, __VA_ARGS__)
     253                 :            : #define PRINT_DEBUG_222(...) PRINT_DEBUG(222, __VA_ARGS__)
     254                 :            : #define NUM_DEBUG_FLAGS 224
     255                 :            : 
     256                 :            : #define PRINT_ERROR(...) CubitMessage::instance()->print_error(CubitString::format(__VA_ARGS__))
     257                 :            : #define PRINT_WARNING(...) CubitMessage::instance()->print_warning(CubitString::format(__VA_ARGS__))
     258                 :            : #define PRINT_INFO(...) CubitMessage::instance()->print_info(CubitString::format(__VA_ARGS__))
     259                 :            : #define DIAGNOSTIC(...) CubitMessage::instance()->print_diagnostic(CubitString::format(__VA_ARGS__))
     260                 :            : #define DIAGNOSTIC_FLAG CubitMessage::instance()->get_diagnostic_flag
     261                 :            : #define DEBUG_FLAG CubitMessage::instance()->debug_flag
     262                 :            : #define GET_INFO_FLAG CubitMessage::instance()->get_info_flag
     263                 :            : #define SET_INFO_FLAG CubitMessage::instance()->set_info_flag
     264                 :            : #define SET_WARNING_FLAG CubitMessage::instance()->set_warning_flag
     265                 :            : #define GET_WARNING_FLAG CubitMessage::instance()->get_warning_flag
     266                 :            : #define SET_ERROR_FLAG CubitMessage::instance()->set_error_flag
     267                 :            : #define GET_ERROR_FLAG CubitMessage::instance()->get_error_flag
     268                 :            : #define DEBUG_FLAG_SET CubitMessage::instance()->is_debug_flag_set
     269                 :            : #define PRINT_DEBUG(x, ...) if(DEBUG_FLAG_SET(x)) CubitMessage::instance()->print_debug(CubitString::format(__VA_ARGS__))
     270                 :            : #define PRINT_FREE CubitMessage::free_instance()
     271                 :            : 
     272                 :            : class CubitString;
     273                 :            : class CubitMessage;
     274                 :            : 
     275                 :            : class CUBIT_UTIL_EXPORT MessageFlag
     276                 :            : {
     277                 :            :   friend class CubitMessage;
     278                 :            : public:
     279                 :            :   ~MessageFlag();
     280                 :            : private:
     281                 :            :   MessageFlag();
     282                 :            :   MessageFlag(int flag_number, const char *desc);
     283                 :            : 
     284                 :            :   void output();
     285                 :            : 
     286                 :            :     // Member variables
     287                 :            :   int flagNumber;
     288                 :            :   int setting;
     289                 :            :   const char *description;
     290                 :            :   CubitString *filename;
     291                 :            :   std::ofstream *outputStream;
     292                 :            : };
     293                 :            : 
     294                 :            : class CUBIT_UTIL_EXPORT CubitMessage
     295                 :            : {
     296                 :            : protected:
     297                 :            : 
     298                 :            :   static CubitMessage* instance_;
     299                 :            :   //- static pointer to unique instance of this class
     300                 :            : 
     301                 :            :   static CubitMessageHandler* mHandler;
     302                 :            :   //- static pointer to the message output handler
     303                 :            :   
     304                 :            :   static CubitMessageErrorHandler* mErrorHandler;
     305                 :            :   //- static pointer to the message context handler
     306                 :            : 
     307                 :            :   static MessageFlag staticDebugFlag[];
     308                 :            : 
     309                 :            :   MessageFlag *debugFlag;
     310                 :            :   //- debug flag, used with internal_error
     311                 :            : 
     312                 :            :   static int infoFlag;
     313                 :            :   //- info flag, used with internal_error
     314                 :            : 
     315                 :            :   static int warningFlag;
     316                 :            :   //- warning flag, used with internal_error
     317                 :            : 
     318                 :            :   static int errorFlag;
     319                 :            :   //- error flag, used with internal_error
     320                 :            : 
     321                 :            :   static int diagnosticFlag;
     322                 :            :   //- diagnostic flag, used with internal_error
     323                 :            : 
     324                 :            :   int currentDebugFlag;
     325                 :            : 
     326                 :            :   static int errorCount;
     327                 :            :   //- static variable to track the errors that occured in the
     328                 :            :   //- a session.  Only gets set when PRINT_ERROR is called.
     329                 :            : 
     330                 :            :   static int expectedStartErrorCount;
     331                 :            :   static int expectedEndErrorCount;
     332                 :            :   static bool expectedLessErrorCountAccepted;
     333                 :            : 
     334                 :            :   static int warningCount;
     335                 :            :   //- static variable to track the warnings that occured in the
     336                 :            :   //- a session.  Only gets set when PRINT_WARNING is called.
     337                 :            : 
     338                 :            :   static std::ofstream *loggingStream;
     339                 :            :   static CubitString *loggingFile;
     340                 :            :   //- Stream pointer for logging of internal_error messages.
     341                 :            :   //- If NULL, output goes to terminal only (except for debug)
     342                 :            :   //- If Non-NULL, output goes to both terminal and stream.
     343                 :            : 
     344                 :            :   static std::ofstream *loggingErrorStream;
     345                 :            :   static CubitString *loggingErrorFile;
     346                 :            :   //- Stream pointer for logging of only ERROR messages.
     347                 :            :   //- If NULL, ERROR output goes to normal places only
     348                 :            :   //- If Non-NULL, output goes to both this stream, and all other places.
     349                 :            : 
     350                 :            :   void add_to_error_count();
     351                 :            :   //- Increments the errorCount variable. Keep private (GDS).
     352                 :            : 
     353                 :            :   void add_to_warning_count();
     354                 :            :   //- Increments the errorCount variable. Keep private (GDS).
     355                 :            :   void set_debug_stream(const int index, std::ofstream *output_stream);
     356                 :            :   //- Set the output stream for this debug flag to output_stream.
     357                 :            : 
     358                 :            :   void remove_debug_stream(const int index);
     359                 :            :   //- Close and delete the stream if only one use.
     360                 :            : 
     361                 :            :   int find_file_use(const CubitString &filename);
     362                 :            :   int count_stream_users(const std::ofstream *stream);
     363                 :            : 
     364                 :            :   CubitMessage ();
     365                 :            :     //- Class Constructor. (Not callable by user code. Class is constructed
     366                 :            :     //- by the {instance()} member function.
     367                 :            : 
     368                 :            : public:
     369                 :            : 
     370                 :            :   static CubitMessage* instance();
     371                 :            :   static void free_instance();
     372                 :            :   //- Controlled access and creation of the sole instance of this class.
     373                 :            : 
     374                 :            :   virtual ~CubitMessage();
     375                 :            :   //- Class Destructor.
     376                 :            : 
     377                 :            :   static void delete_instance();
     378                 :            : 
     379                 :            :   void set_logging_file_setting(const CubitString &filename, CubitBoolean resume_flag = CUBIT_FALSE);
     380                 :            :   void set_debug_file_setting(const int index, const CubitString &filename);
     381                 :            : 
     382                 :            :   CubitString logging_filename() const;
     383                 :            :   CubitString logging_errors_filename() const;
     384                 :            : 
     385                 :            :   int is_debug_flag_set( int flag );
     386                 :            :   //- for use with the PRINT_DEBUG macro only
     387                 :            : 
     388                 :            :   //static int get_debug_for_setting_handler(const int index)
     389                 :            :   //{return staticDebugFlag[index].setting;};
     390                 :            :   // static void set_debug_for_setting_handler(const int index, const int value)
     391                 :            :   //{staticDebugFlag[index].setting = value;};
     392                 :            :   //- for use with SettingHandler.cpp code only
     393                 :            : 
     394                 :            :   int  debug_flag(const int index);
     395                 :            :   void debug_flag(const int index, const int flag);
     396                 :            :   int  number_of_debug_flags();
     397                 :            :   //- debug flag, used with internal_error
     398                 :            : 
     399                 :          0 :   virtual void set_debug_flag_gui(bool /*flag*/){};
     400                 :          0 :   virtual int is_debug_flag_gui_set(){return 0;};
     401                 :          0 :   virtual int print_debug_gui( const char* /* format*/ , ... ){return 0;};
     402                 :            :   //- write out a debug message (from GUI only)
     403                 :            :   //- used for GUI Debugging (CAT-only)
     404                 :            : 
     405                 :            :   static bool get_info_flag();
     406                 :            :   static void set_info_flag(bool flag);
     407                 :            :   //- info flag, used with internal_error
     408                 :            : 
     409                 :            :   static bool get_warning_flag();
     410                 :            :   static void set_warning_flag(bool flag);
     411                 :            :   //- warning flag, used with internal_error
     412                 :            : 
     413                 :            :   static bool get_error_flag();
     414                 :            :   static void set_error_flag(bool flag);
     415                 :            :   //- error flag, used with internal_error
     416                 :            : 
     417                 :            :   static bool get_diagnostic_flag();
     418                 :            :   static void set_diagnostic_flag(bool flag);
     419                 :            :   //- diagnostic flag, used with internal_error
     420                 :            : 
     421                 :            :   virtual void internal_error(const int message_type, std::ofstream *output_stream,
     422                 :            :                               const CubitString& str);
     423                 :            :   //- write out a debug/info/error/warning message
     424                 :            : 
     425                 :            :   int print_error(const CubitString& str);
     426                 :            :   //- write out an error message
     427                 :            : 
     428                 :            :   int print_warning(const CubitString& str);
     429                 :            :   //- write out a warning message
     430                 :            : 
     431                 :            :   int print_info(const CubitString& str);
     432                 :            :   //- write out an info message
     433                 :            : 
     434                 :            :   int print_debug(const CubitString& str);
     435                 :            :   //- write out a debug message
     436                 :            : 
     437                 :            :   void print_diagnostic(const CubitString& str);
     438                 :            :   //- write out a diagnostic message
     439                 :            : 
     440                 :            :   int reset_error_count(int value = 0);
     441                 :            :   //- Sets the errorCount variable to 0;
     442                 :            :   //- Returns current value of variable.
     443                 :            : 
     444                 :            :   int error_count();
     445                 :            :   //- Returns the value of the errorCount variable;
     446                 :            :   //- This errorCount variable is incremented only if print_error is called;
     447                 :            :   //- there is not a public  interface to only set the flag.
     448                 :            :   //- My reasoning for that is that there should be
     449                 :            :   //- some notification of an error so that the
     450                 :            :   //- user can figure out why this function returns TRUE.
     451                 :            : 
     452                 :            :   int reset_warning_count(int value = 0);
     453                 :            :   //- Sets the warningCount variable to 0;
     454                 :            :   //- Returns current value of variable.
     455                 :            : 
     456                 :            :   int warning_count();
     457                 :            :   //- Returns the value of the warningCount variable;
     458                 :            :   //- This warningCount variable is incremented only if print_warning is called;
     459                 :            :   //- there is not a public  interface to only set the flag.
     460                 :            :   //- My reasoning for that is that there should be
     461                 :            :   //- some notification of an error so that the
     462                 :            :   //- user can figure out why this function returns TRUE.
     463                 :            : 
     464                 :            :   void output_debug_information(int from=1, int to=-1, int step=1);
     465                 :            :   void output_debug_information(CubitString &match);
     466                 :            :   void output_logging_information();
     467                 :            : 
     468                 :            :   static char* get_logging_file_setting();
     469                 :            :   static void set_logging_file_setting(const char* file);
     470                 :            :   static void set_error_logging_file_setting(const char* file, CubitBoolean resume_flag = CUBIT_FALSE);
     471                 :            : 
     472                 :            :   static void initialize_settings();
     473                 :            : 
     474                 :            :   static void set_message_handler(CubitMessageHandler *handler);
     475                 :            :   static CubitMessageHandler* get_message_handler();
     476                 :            :   
     477                 :            :   static void set_error_handler(CubitMessageErrorHandler *handler);
     478                 :            :   static CubitMessageErrorHandler* get_error_handler();
     479                 :            : 
     480                 :            :   //! start an expected error count
     481                 :            :   //! also set whether an error count less than that is acceptable at stop time
     482                 :            :   //! X number of errors will be suppressed, and will print out with a prefix of EXPECTED_ERROR:
     483                 :            :   void start_expected_error_count(int error_count, bool less_than_accepted);
     484                 :            :   //! stop an expected error count
     485                 :            :   //! if the remaining number of expected errors is zero, we simply clean up.
     486                 :            :   //! otherwise, an ERROR is reported
     487                 :            :   //! if the CUBIT_CTEST environment variable is set, a cdash formatted message will be printed out
     488                 :            :   void stop_expected_error_count(const CubitString& message);
     489                 :            : 
     490                 :            : }; // End of Class CubitMessage
     491                 :            : 
     492                 :            : inline int
     493                 :     989651 : CubitMessage::debug_flag(const int index)
     494                 :     989651 : {return debugFlag[index].setting;}
     495                 :            : 
     496                 :            : inline void
     497                 :            : CubitMessage::debug_flag(const int index, const int flag)
     498                 :            : {debugFlag[index].setting = flag;}
     499                 :            : 
     500                 :            : inline bool
     501                 :          0 : CubitMessage::get_info_flag()
     502                 :          0 : {return !!infoFlag;}
     503                 :            : 
     504                 :            : inline void
     505                 :          0 : CubitMessage::set_info_flag(bool flag)
     506                 :          0 : {infoFlag = flag;}
     507                 :            : 
     508                 :            : inline bool
     509                 :          0 : CubitMessage::get_warning_flag()
     510                 :          0 : {return !!warningFlag;}
     511                 :            : 
     512                 :            : inline void
     513                 :          0 : CubitMessage::set_warning_flag(bool flag)
     514                 :          0 : {warningFlag = flag;}
     515                 :            : 
     516                 :            : inline bool
     517                 :          0 : CubitMessage::get_error_flag()
     518                 :          0 : {return !!errorFlag;}
     519                 :            : 
     520                 :            : inline void
     521                 :          0 : CubitMessage::set_error_flag(bool flag)
     522                 :          0 : {errorFlag = flag;}
     523                 :            : 
     524                 :            : inline bool
     525                 :          0 : CubitMessage::get_diagnostic_flag()
     526                 :          0 : {return !!diagnosticFlag;}
     527                 :            : 
     528                 :            : inline void
     529                 :          0 : CubitMessage::set_diagnostic_flag(bool flag)
     530                 :          0 : {diagnosticFlag = flag;}
     531                 :            : 
     532                 :            : #endif
     533                 :            : 

Generated by: LCOV version 1.11