From 45fe6c4b0efcd807dd67bb1bcdc5e104583332ae Mon Sep 17 00:00:00 2001 From: Sascha Volkenandt Date: Fri, 5 Jan 2007 19:38:54 +0000 Subject: - moved pagelib back to plugin - incorporated all code into one shared object --- tools.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tools.h (limited to 'tools.h') diff --git a/tools.h b/tools.h new file mode 100644 index 0000000..c39075b --- /dev/null +++ b/tools.h @@ -0,0 +1,31 @@ +#ifndef VDR_LIVE_TOOLS_H +#define VDR_LIVE_TOOLS_H + +#include +#include +#include + +namespace vdrlive { + +std::string FormatDateTime( char const* format, time_t time ); +std::string StringReplace( std::string const& text, std::string const& substring, std::string const& replacement ); + +class ReadLock +{ +public: + ReadLock( cRwLock& lock, int timeout = 100 ): m_lock( lock ), m_locked( false ) { if ( m_lock.Lock( false, timeout ) ) m_locked = true; } + ~ReadLock() { if ( m_locked ) m_lock.Unlock(); } + + operator bool() { return m_locked; } + bool operator!() { return !m_locked; } + +private: + ReadLock( ReadLock const& ); + + cRwLock& m_lock; + bool m_locked; +}; + +} // namespace vdrlive + +#endif // VDR_LIVE_TOOLS_H -- cgit v1.2.3