SourceXtractorPlusPlus
0.11
Please provide a description of the project.
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SEFramework
SEFramework
FITS
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 <string>
29
#include <vector>
30
#include <map>
31
32
#include <fitsio.h>
33
34
#include "
SEFramework/Image/ImageSourceWithMetadata.h
"
35
#include "
SEFramework/FITS/FitsFileManager.h
"
36
37
namespace
SourceXtractor {
38
44
class
FitsFile
{
45
protected
:
46
FitsFile
(
const
std::string
&
filename
,
bool
writeable,
std::shared_ptr<FitsFileManager>
manager);
47
48
public
:
49
50
virtual
~FitsFile
();
51
52
fitsfile*
getFitsFilePtr
() {
53
if
(!
m_is_file_opened
) {
54
open
();
55
}
56
return
m_file_pointer
;
57
}
58
59
const
std::vector<int>
&
getImageHdus
()
const
{
60
return
m_image_hdus
;
61
}
62
63
const
std::map<std::string, MetadataEntry>
&
getHDUHeaders
(
int
hdu)
const
{
64
return
m_headers
.at(hdu-1);
65
}
66
67
void
setWriteMode
();
68
69
void
open
();
70
void
close
();
71
72
private
:
73
void
openFirstTime
();
74
void
reopen
();
75
76
std::map<std::string, MetadataEntry>
loadFitsHeader
(fitsfile *fptr);
77
void
loadHeaders
();
78
void
loadHeadFile
();
79
80
std::string
m_filename
;
81
fitsfile*
m_file_pointer
;
82
bool
m_is_file_opened
;
83
bool
m_is_writeable
;
84
bool
m_was_opened_before
;
85
86
std::vector<int>
m_image_hdus
;
87
88
std::vector<std::map<std::string, MetadataEntry>
>
m_headers
;
89
90
std::shared_ptr<FitsFileManager>
m_manager
;
91
92
friend
class
FitsFileManager
;
93
};
94
95
}
96
97
#endif
/* _SEFRAMEWORK_FITS_FITSFILE_H_ */
SourceXtractor::FitsFile::reopen
void reopen()
Definition:
FitsFile.cpp:154
std::shared_ptr
FitsFileManager.h
SourceXtractor::FitsFile::m_image_hdus
std::vector< int > m_image_hdus
Definition:
FitsFile.h:86
SourceXtractor::FitsFile::openFirstTime
void openFirstTime()
Definition:
FitsFile.cpp:102
SourceXtractor::FitsFile::m_is_file_opened
bool m_is_file_opened
Definition:
FitsFile.h:82
SourceXtractor::FitsFile::setWriteMode
void setWriteMode()
Definition:
FitsFile.cpp:183
SourceXtractor::FitsFile::m_is_writeable
bool m_is_writeable
Definition:
FitsFile.h:83
SourceXtractor::FitsFile::m_headers
std::vector< std::map< std::string, MetadataEntry > > m_headers
Definition:
FitsFile.h:88
std::map
STL class.
SourceXtractor::FitsFile::close
void close()
Definition:
FitsFile.cpp:174
SourceXtractor::FitsFile::m_file_pointer
fitsfile * m_file_pointer
Definition:
FitsFile.h:81
SourceXtractor::FitsFile::getFitsFilePtr
fitsfile * getFitsFilePtr()
Definition:
FitsFile.h:52
std::string
STL class.
SourceXtractor::FitsFile::m_was_opened_before
bool m_was_opened_before
Definition:
FitsFile.h:84
ImageSourceWithMetadata.h
SourceXtractor::FitsFile::~FitsFile
virtual ~FitsFile()
Definition:
FitsFile.cpp:98
conf.filename
string filename
Definition:
conf.py:63
SourceXtractor::FitsFile::loadFitsHeader
std::map< std::string, MetadataEntry > loadFitsHeader(fitsfile *fptr)
Definition:
FitsFile.cpp:209
SourceXtractor::FitsFile
represents access to a whole FITS file and handles loading and caching FITS headers ...
Definition:
FitsFile.h:44
SourceXtractor::FitsFile::open
void open()
Definition:
FitsFile.cpp:163
SourceXtractor::FitsFile::getHDUHeaders
const std::map< std::string, MetadataEntry > & getHDUHeaders(int hdu) const
Definition:
FitsFile.h:63
std::vector< int >
SourceXtractor::FitsFileManager
Definition:
FitsFileManager.h:39
SourceXtractor::FitsFile::getImageHdus
const std::vector< int > & getImageHdus() const
Definition:
FitsFile.h:59
SourceXtractor::FitsFile::m_filename
std::string m_filename
Definition:
FitsFile.h:80
SourceXtractor::FitsFile::m_manager
std::shared_ptr< FitsFileManager > m_manager
Definition:
FitsFile.h:90
SourceXtractor::FitsFile::FitsFile
FitsFile(const std::string &filename, bool writeable, std::shared_ptr< FitsFileManager > manager)
Definition:
FitsFile.cpp:89
SourceXtractor::FitsFile::loadHeaders
void loadHeaders()
Definition:
FitsFile.cpp:191
SourceXtractor::FitsFile::loadHeadFile
void loadHeadFile()
Definition:
FitsFile.cpp:235
Generated by
1.8.5