53 myCurrentLevel(0), myCurrentPrefix (
""), myWriter(writer)
66 myWriter.outputStream() << myWriter.postfixReset();
102 myCurrentPrefix =
"";
103 while( !myKeywordStack.empty() )
104 myKeywordStack.pop();
105 while( !myClockStack.empty() )
119 myWriter.outputStream()<< myCurrentPrefix
120 << myWriter.prefixEmphase()
121 <<
"New Block ["<<keyword <<
"]"
122 << myWriter.postfixReset()
125 myCurrentPrefix += TRACE_PATTERN;
126 myKeywordStack.push(keyword);
131 myClockStack.push(c);
147 ASSERT (myCurrentLevel >0);
149 localClock = myClockStack.top();
153 myCurrentPrefix =
"";
154 for(
unsigned int i = 0; i < myCurrentLevel; i++)
155 myCurrentPrefix += TRACE_PATTERN;
157 myWriter.outputStream() << myCurrentPrefix
158 << myWriter.prefixEmphase()
159 <<
"EndBlock [" << myKeywordStack.top()
160 <<
"] (" << tick<<
" ms)"
161 << myWriter.postfixReset()<< std::endl;
162 myKeywordStack.pop();
173 inline std::ostream &
176 myWriter.outputStream() << myCurrentPrefix << myWriter.prefixWarning();
177 return myWriter.outputStream();
186 inline std::ostream &
189 myWriter.outputStream() << myCurrentPrefix << myWriter.prefixError();
190 return myWriter.outputStream();
199 inline std::ostream &
202 myWriter.outputStream() << myCurrentPrefix << myWriter.prefixEmphase();
203 return myWriter.outputStream();
210 inline std::ostream &
213 myWriter.outputStream() << myCurrentPrefix << myWriter.prefixInfo();
214 return myWriter.outputStream();
222 double fraction = currentValue /maximumValue;
225 int dotz = (int)floor(fraction * totaldotz);
229 myWriter.outputStream() << myCurrentPrefix<<
"[";
231 for ( ; ii < dotz;ii++)
233 myWriter.outputStream()<<
"#";
236 for ( ; ii < totaldotz;ii++)
238 myWriter.outputStream()<<
" ";
241 myWriter.outputStream()<<
"] "<< (int)(fraction*100)<<
"/100\r";
242 myWriter.outputStream().flush();
259 const Trace &
object )
261 object.selfDisplay( out );