Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
mrpt::system::CFileSystemWatcher Class Reference

Detailed Description

This class subscribes to notifications of file system changes, thus it can be used to efficiently stay informed about changes in a directory tree.

Definition at line 29 of file CFileSystemWatcher.h.

#include <mrpt/system/CFileSystemWatcher.h>


struct  TFileSystemChange
 Each of the changes detected by utils::CFileSystemWatcher. More...

Public Types

using TFileSystemChangeList = std::deque< TFileSystemChange >

Public Member Functions

 CFileSystemWatcher (const std::string &path)
 Creates the subscription to a specified path. More...
virtual ~CFileSystemWatcher ()
 Destructor. More...
void getChanges (TFileSystemChangeList &out_list)
 Call this method sometimes to get the list of changes in the watched directory. More...

Private Member Functions

void thread_win32_watch ()
 Watch thread; only needed in win32. More...

Private Attributes

std::string m_watchedDirectory
 Ended in "/". More...
voidm_hNotif {nullptr}
std::thread m_watchThread
std::queue< TFileSystemChange * > m_queue_events_win32_msgs
std::mutex m_queue_events_win32_cs

Member Typedef Documentation

◆ TFileSystemChangeList

Definition at line 50 of file CFileSystemWatcher.h.

Constructor & Destructor Documentation

◆ CFileSystemWatcher()

CFileSystemWatcher::CFileSystemWatcher ( const std::string path)

Creates the subscription to a specified path.

pathThe file or directory to watch.

Definition at line 41 of file CFileSystemWatcher.cpp.

References ASSERT_, m_hNotif, m_watchedDirectory, m_watchThread, MRPT_END, MRPT_START, thread_win32_watch(), and THROW_EXCEPTION.

◆ ~CFileSystemWatcher()

CFileSystemWatcher::~CFileSystemWatcher ( )


Definition at line 90 of file CFileSystemWatcher.cpp.

References m_hNotif.

Member Function Documentation

◆ getChanges()

void CFileSystemWatcher::getChanges ( TFileSystemChangeList out_list)

◆ thread_win32_watch()

void CFileSystemWatcher::thread_win32_watch ( )

Member Data Documentation

◆ m_hNotif

void* mrpt::system::CFileSystemWatcher::m_hNotif {nullptr}

◆ m_queue_events_win32_cs

std::mutex mrpt::system::CFileSystemWatcher::m_queue_events_win32_cs

Definition at line 76 of file CFileSystemWatcher.h.

Referenced by getChanges(), and thread_win32_watch().

◆ m_queue_events_win32_msgs

std::queue<TFileSystemChange*> mrpt::system::CFileSystemWatcher::m_queue_events_win32_msgs

Definition at line 75 of file CFileSystemWatcher.h.

Referenced by getChanges(), and thread_win32_watch().

◆ m_watchedDirectory

std::string mrpt::system::CFileSystemWatcher::m_watchedDirectory

Ended in "/".

Definition at line 69 of file CFileSystemWatcher.h.

Referenced by CFileSystemWatcher(), getChanges(), and thread_win32_watch().

◆ m_watchThread

std::thread mrpt::system::CFileSystemWatcher::m_watchThread

Definition at line 72 of file CFileSystemWatcher.h.

Referenced by CFileSystemWatcher().

Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at lun oct 28 00:14:14 CET 2019