1 | #include <iostream> |
---|---|
2 | #include <fstream> |
3 | #include "stream_holder.hpp" |
4 | |
5 | /////////////////////////// |
6 | // StreamHolder methods |
7 | StreamHolder:: |
8 | StreamHolder(const std::string &filename): |
9 | m_delete_stream(false) |
10 | { |
11 | if (filename == "stderr") |
12 | { |
13 | m_stream = &std::cerr; |
14 | } |
15 | else if (filename == "stdout") |
16 | { |
17 | m_stream = &std::cout; |
18 | } |
19 | else |
20 | { |
21 | m_delete_stream = true; |
22 | m_stream = FASTUIDRAWnew std::ofstream(filename.c_str()); |
23 | } |
24 | } |
25 | |
26 | StreamHolder:: |
27 | ~StreamHolder() |
28 | { |
29 | if (m_delete_stream) |
30 | { |
31 | FASTUIDRAWdelete(m_stream); |
32 | } |
33 | } |
34 |