Branch data Line data Source code
1 : : /*!
2 : : * \class mstream
3 : : * \brief Print something on console and file using redirection symbol <<,
4 : : * open a file in your program: <mstream object>.coss.open (m_LogName.c_str(), std::ios::out);
5 : : *
6 : : **/
7 : : #ifndef __MESHKIT_MSTREAM_H__
8 : : #define __MESHKIT_MSTREAM_H__
9 : :
10 : : #include <iostream>
11 : : #include <fstream>
12 : :
13 : : class mstream
14 : : {
15 : : public:
16 : : std::ofstream coss;
17 : : mstream();
18 : : ~mstream();
19 : : mstream& operator<< (std::ostream& (*pfun)(std::ostream&));
20 : : };
21 : :
22 : : template <class T>
23 : 370 : mstream& operator<< (mstream& st, T val)
24 : : {
25 : 370 : st.coss << val;
26 : 370 : std::cout << val;
27 : 370 : return st;
28 : : }
29 : :
30 : : #endif
|