0024644: Draw_Printer - provide the way to control messages gravity filter
[occt.git] / src / Draw / Draw_Printer.cxx
1 // Created on: 2007-07-31
2 // Created by: OCC Team
3 // Copyright (c) 2007-2014 OPEN CASCADE SAS
4 //
5 // This file is part of Open CASCADE Technology software library.
6 //
7 // This library is free software; you can redistribute it and/or modify it under
8 // the terms of the GNU Lesser General Public License version 2.1 as published
9 // by the Free Software Foundation, with special exception defined in the file
10 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 // distribution for complete text of the license and disclaimer of any warranty.
12 //
13 // Alternatively, this file may be used under the terms of Open CASCADE
14 // commercial license or contractual agreement.
15
16 #include <Draw_Printer.ixx>
17
18 #include <TCollection_AsciiString.hxx>
19 #include <TCollection_ExtendedString.hxx>
20
21 //=======================================================================
22 //function : Draw_Printer
23 //purpose  : 
24 //=======================================================================
25
26 Draw_Printer::Draw_Printer (const Draw_Interpretor& theTcl)
27 : myTcl((Standard_Address)&theTcl)
28 {
29 }
30
31 //=======================================================================
32 //function : Send
33 //purpose  :
34 //=======================================================================
35
36 void Draw_Printer::Send (const TCollection_ExtendedString& theString,
37                          const Message_Gravity             theGravity,
38                          const Standard_Boolean            theToPutEol) const
39 {
40   if (!myTcl
41    || theGravity < myTraceLevel)
42   {
43     return;
44   }
45
46   (*(Draw_Interpretor*)myTcl) << theString;
47   if (theToPutEol)
48   {
49     (*(Draw_Interpretor*)myTcl) << "\n";
50   }
51 }
52
53 //=======================================================================
54 //function : Send
55 //purpose  :
56 //=======================================================================
57
58 void Draw_Printer::Send (const Standard_CString theString,
59                          const Message_Gravity  theGravity,
60                          const Standard_Boolean theToPutEol) const
61 {
62   if (!myTcl
63    || theGravity < myTraceLevel)
64   {
65     return;
66   }
67
68   (*(Draw_Interpretor*)myTcl) << theString;
69   if (theToPutEol)
70   {
71     (*(Draw_Interpretor*)myTcl) << "\n";
72   }
73 }
74
75 //=======================================================================
76 //function : Send
77 //purpose  :
78 //=======================================================================
79
80 void Draw_Printer::Send (const TCollection_AsciiString& theString,
81                          const Message_Gravity          theGravity,
82                          const Standard_Boolean         theToPutEol) const
83 {
84   if (!myTcl
85    || theGravity < myTraceLevel)
86   {
87     return;
88   }
89
90   (*(Draw_Interpretor*)myTcl) << theString;
91   if (theToPutEol)
92   {
93     (*(Draw_Interpretor*)myTcl) << "\n";
94   }
95 }