SourceXtractorPlusPlus
0.13
Please provide a description of the project.
|
#include <FitsFileManager.h>
Public Member Functions | |
FitsFileManager (unsigned int max_open_files=500) | |
virtual | ~FitsFileManager () |
void | closeAllFiles () |
std::shared_ptr< FitsFile > | getFitsFile (const std::string &filename, bool writeable=false) |
void | closeAndPurgeFile (const std::string &filename) |
void | reportClosedFile (const std::string &filename) |
void | reportOpenedFile (const std::string &filename) |
![]() | |
T | enable_shared_from_this (T... args) |
T | operator= (T... args) |
T | shared_from_this (T... args) |
T | ~enable_shared_from_this (T... args) |
Static Public Member Functions | |
static std::shared_ptr< FitsFileManager > | getInstance () |
Private Member Functions | |
void | closeExtraFiles () |
Private Attributes | |
std::unordered_map< std::string, std::shared_ptr< FitsFile > > | m_fits_files |
unsigned int | m_max_open_files |
std::list< std::string > | m_open_files |
Static Private Attributes | |
static std::shared_ptr< FitsFileManager > | s_instance |
Definition at line 39 of file FitsFileManager.h.
SourceXtractor::FitsFileManager::FitsFileManager | ( | unsigned int | max_open_files = 500 | ) |
Definition at line 39 of file FitsFileManager.cpp.
|
virtual |
Definition at line 42 of file FitsFileManager.cpp.
References closeAllFiles().
void SourceXtractor::FitsFileManager::closeAllFiles | ( | ) |
Definition at line 46 of file FitsFileManager.cpp.
References m_fits_files.
Referenced by ~FitsFileManager().
void SourceXtractor::FitsFileManager::closeAndPurgeFile | ( | const std::string & | filename | ) |
Definition at line 79 of file FitsFileManager.cpp.
References conf::filename, and m_fits_files.
|
private |
Definition at line 68 of file FitsFileManager.cpp.
References std::list< T >::back(), m_fits_files, m_max_open_files, m_open_files, and std::list< T >::size().
Referenced by reportOpenedFile().
std::shared_ptr< FitsFile > SourceXtractor::FitsFileManager::getFitsFile | ( | const std::string & | filename, |
bool | writeable = false |
||
) |
Definition at line 52 of file FitsFileManager.cpp.
References conf::filename, m_fits_files, and std::enable_shared_from_this< FitsFileManager >::shared_from_this().
|
inlinestatic |
Definition at line 47 of file FitsFileManager.h.
References s_instance.
Referenced by SEMain::mainMethod(), and SourceXtractor::PyFitsFile::PyFitsFile().
void SourceXtractor::FitsFileManager::reportClosedFile | ( | const std::string & | filename | ) |
Definition at line 75 of file FitsFileManager.cpp.
References conf::filename, m_open_files, and std::list< T >::remove().
void SourceXtractor::FitsFileManager::reportOpenedFile | ( | const std::string & | filename | ) |
Definition at line 88 of file FitsFileManager.cpp.
References std::list< T >::begin(), closeExtraFiles(), std::list< T >::end(), conf::filename, std::find(), m_open_files, and std::list< T >::push_front().
|
private |
Definition at line 62 of file FitsFileManager.h.
Referenced by closeAllFiles(), closeAndPurgeFile(), closeExtraFiles(), and getFitsFile().
|
private |
Definition at line 64 of file FitsFileManager.h.
Referenced by closeExtraFiles().
|
private |
Definition at line 65 of file FitsFileManager.h.
Referenced by closeExtraFiles(), reportClosedFile(), and reportOpenedFile().
|
staticprivate |
Definition at line 67 of file FitsFileManager.h.
Referenced by getInstance().