CARTA Backend
The backend component of CARTA
Loading...
Searching...
No Matches
carta::FileListHandler Class Reference

#include <FileListHandler.h>

Collaboration diagram for carta::FileListHandler:
[legend]

Classes

struct  ResultMsg
 

Public Member Functions

 FileListHandler (const std::string &top_level_folder, const std::string &starting_folder)
 
void OnFileListRequest (const CARTA::FileListRequest &request, CARTA::FileListResponse &response, ResultMsg &result_msg)
 
void OnRegionListRequest (const CARTA::RegionListRequest &region_request, CARTA::RegionListResponse &region_response, ResultMsg &result_msg)
 
void OnRegionFileInfoRequest (const CARTA::RegionFileInfoRequest &request, CARTA::RegionFileInfoResponse &response, ResultMsg &result_msg)
 
void StopGettingFileList ()
 
void SetProgressCallback (const std::function< void(CARTA::ListProgress)> &progress_callback)
 

Private Member Functions

void GetFileList (CARTA::FileListResponse &file_list, const std::string &folder, ResultMsg &result_msg, CARTA::FileListFilterMode filter_mode, bool region_list=false)
 
bool FillRegionFileInfo (CARTA::FileInfo &file_info, const std::string &filename, CARTA::FileType type=CARTA::FileType::UNKNOWN, bool determine_file_type=true)
 
void GetRegionFileContents (std::string &full_name, std::vector< std::string > &file_contents)
 
void GetRelativePath (std::string &folder)
 

Private Attributes

std::mutex _file_list_mutex
 
std::mutex _region_list_mutex
 
std::string _filelist_folder
 
std::string _regionlist_folder
 
std::string _top_level_folder
 
std::string _starting_folder
 
volatile bool _stop_getting_file_list
 
volatile bool _first_report_made
 
std::function< void(CARTA::ListProgress)> _progress_callback
 

Constructor & Destructor Documentation

◆ FileListHandler()

FileListHandler::FileListHandler ( const std::string &  top_level_folder,
const std::string &  starting_folder 
)

Member Function Documentation

◆ FillRegionFileInfo()

bool FileListHandler::FillRegionFileInfo ( CARTA::FileInfo &  file_info,
const std::string &  filename,
CARTA::FileType  type = CARTA::FileType::UNKNOWN,
bool  determine_file_type = true 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetFileList()

void FileListHandler::GetFileList ( CARTA::FileListResponse &  file_list,
const std::string &  folder,
ResultMsg result_msg,
CARTA::FileListFilterMode  filter_mode,
bool  region_list = false 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetRegionFileContents()

void FileListHandler::GetRegionFileContents ( std::string &  full_name,
std::vector< std::string > &  file_contents 
)
private
Here is the caller graph for this function:

◆ GetRelativePath()

void FileListHandler::GetRelativePath ( std::string &  folder)
private
Here is the caller graph for this function:

◆ OnFileListRequest()

void FileListHandler::OnFileListRequest ( const CARTA::FileListRequest &  request,
CARTA::FileListResponse &  response,
ResultMsg result_msg 
)
Here is the call graph for this function:

◆ OnRegionFileInfoRequest()

void FileListHandler::OnRegionFileInfoRequest ( const CARTA::RegionFileInfoRequest &  request,
CARTA::RegionFileInfoResponse &  response,
ResultMsg result_msg 
)
Here is the call graph for this function:

◆ OnRegionListRequest()

void FileListHandler::OnRegionListRequest ( const CARTA::RegionListRequest &  region_request,
CARTA::RegionListResponse &  region_response,
ResultMsg result_msg 
)
Here is the call graph for this function:

◆ SetProgressCallback()

void carta::FileListHandler::SetProgressCallback ( const std::function< void(CARTA::ListProgress)> &  progress_callback)
inline

◆ StopGettingFileList()

void carta::FileListHandler::StopGettingFileList ( )
inline

Member Data Documentation

◆ _file_list_mutex

std::mutex carta::FileListHandler::_file_list_mutex
private

◆ _filelist_folder

std::string carta::FileListHandler::_filelist_folder
private

◆ _first_report_made

volatile bool carta::FileListHandler::_first_report_made
private

◆ _progress_callback

std::function<void(CARTA::ListProgress)> carta::FileListHandler::_progress_callback
private

◆ _region_list_mutex

std::mutex carta::FileListHandler::_region_list_mutex
private

◆ _regionlist_folder

std::string carta::FileListHandler::_regionlist_folder
private

◆ _starting_folder

std::string carta::FileListHandler::_starting_folder
private

◆ _stop_getting_file_list

volatile bool carta::FileListHandler::_stop_getting_file_list
private

◆ _top_level_folder

std::string carta::FileListHandler::_top_level_folder
private

The documentation for this class was generated from the following files: