#include <sys/time.h>
#endif
+#ifdef MSVC
+#include <sys/timeb.h>
+#endif
+
class Timer
{
public:
virtual void timerReport (const char* const msg) const
{
- cout << msg << ": " << m_timeElapsed << " seconds" << endl;
+ std::cout << msg << ": " << m_timeElapsed << " seconds" << std::endl;
}
virtual double timerEndAndReport (const char* const msg)
return 0;
return (now.tv_sec + static_cast<double>(now.tv_usec) / 1000000.);
+#elif defined(MSVC)
+ struct _timeb now;
+ _ftime (&now);
+ return (now.time + static_cast<double>(now.millitm) / 1000.);
#else
return 0;
#endif
virtual void timerReport (const char* const msg)
{
if (m_comm.Get_rank() == 0)
- cout << msg << ": " << m_timeElapsed << " seconds" << endl;
+ std::cout << msg << ": " << m_timeElapsed << " seconds" << std::endl;
}
virtual double timerEndAndReport (const char* const msg)
virtual void timerReport (const char* const msg)
{
if (m_comm.Get_rank() == 0)
- cout << msg << " " << "Minimum=" << m_timeMin << ", Maximum=" << m_timeMax << " seconds" << endl;
+ std::cout << msg << " " << "Minimum=" << m_timeMin << ", Maximum=" << m_timeMax << " seconds" << std::endl;
}
virtual void timerReportAllProcesses (const char* const msg)
{
- cout << msg << ": " << "Minimum=" << m_timeMin << ", Maximum=" << m_timeMax << " seconds (Rank " << m_comm.Get_rank() << ")" << endl;
+ std::cout << msg << ": " << "Minimum=" << m_timeMin << ", Maximum=" << m_timeMax << " seconds (Rank " << m_comm.Get_rank() << ")" << std::endl;
}
private: