SourceXtractorPlusPlus  0.15
Please provide a description of the project.
FitsFile.h
Go to the documentation of this file.
1 
18 /*
19  * FitsFile.h
20  *
21  * Created on: Jun 9, 2020
22  * Author: mschefer
23  */
24 
25 #ifndef _SEFRAMEWORK_FITS_FITSFILE_H_
26 #define _SEFRAMEWORK_FITS_FITSFILE_H_
27 
28 #include <boost/filesystem/path.hpp>
29 #include <fitsio.h>
30 #include <map>
31 #include <string>
32 #include <vector>
33 
35 
36 namespace SourceXtractor {
37 
43 class FitsFile {
44 public:
45  FitsFile(const boost::filesystem::path& path, bool writeable);
46 
47  FitsFile(FitsFile&&) = default;
48 
49  virtual ~FitsFile();
50 
51  fitsfile* getFitsFilePtr();
52 
53  const std::vector<int>& getImageHdus() const;
54 
56 
57  void refresh();
58 
59 private:
60  boost::filesystem::path m_path;
62  std::unique_ptr<fitsfile, void (*)(fitsfile*)> m_fits_ptr;
65 
66  void open();
67  void loadInfo();
68  void loadFitsHeader();
69  void loadHeadFile();
70 };
71 
72 } // namespace SourceXtractor
73 
74 #endif /* _SEFRAMEWORK_FITS_FITSFILE_H_ */
SourceXtractor::FitsFile::refresh
void refresh()
Definition: FitsFile.cpp:134
SourceXtractor::FitsFile::getImageHdus
const std::vector< int > & getImageHdus() const
Definition: FitsFile.cpp:106
SourceXtractor::FitsFile::FitsFile
FitsFile(const boost::filesystem::path &path, bool writeable)
Definition: FitsFile.cpp:93
std::vector< int >
SourceXtractor::FitsFile::m_is_writeable
bool m_is_writeable
Definition: FitsFile.h:61
SourceXtractor::FitsFile
represents access to a whole FITS file and handles loading and caching FITS headers
Definition: FitsFile.h:43
SourceXtractor::FitsFile::m_headers
std::vector< std::map< std::string, MetadataEntry > > m_headers
Definition: FitsFile.h:64
SourceXtractor
Definition: Aperture.h:30
ImageSourceWithMetadata.h
std::map
STL class.
SourceXtractor::FitsFile::getFitsFilePtr
fitsfile * getFitsFilePtr()
Definition: FitsFile.cpp:102
SourceXtractor::FitsFile::FitsFile
FitsFile(FitsFile &&)=default
SourceXtractor::FitsFile::m_fits_ptr
std::unique_ptr< fitsfile, void(*)(fitsfile *)> m_fits_ptr
Definition: FitsFile.h:62
SourceXtractor::FitsFile::loadInfo
void loadInfo()
Definition: FitsFile.cpp:153
SourceXtractor::FitsFile::~FitsFile
virtual ~FitsFile()
Definition: FitsFile.cpp:100
SourceXtractor::FitsFile::open
void open()
Definition: FitsFile.cpp:114
SourceXtractor::FitsFile::m_image_hdus
std::vector< int > m_image_hdus
Definition: FitsFile.h:63
SourceXtractor::FitsFile::getHDUHeaders
std::map< std::string, MetadataEntry > & getHDUHeaders(int hdu)
Definition: FitsFile.cpp:110
SourceXtractor::FitsFile::loadHeadFile
void loadHeadFile()
Definition: FitsFile.cpp:244
path
Elements::Path::Item path
std::unique_ptr
STL class.
SourceXtractor::FitsFile::m_path
boost::filesystem::path m_path
Definition: FitsFile.h:60
SourceXtractor::FitsFile::loadFitsHeader
void loadFitsHeader()
Definition: FitsFile.cpp:226