22 #include <system_error>
25 #include <system_error>
26 #include <CCfits/CCfits>
41 namespace SourceXtractor {
57 auto out_file = output_config.getOutputFile();
66 if (!check_writeable) {
75 switch (output_config.getOutputFileFormat()) {
77 fits_table_writer = Euclid::make_unique<Euclid::Table::FitsWriter>(out_file,
true);
79 table_writer =
std::move(fits_table_writer);
82 ldac_writer = std::make_shared<LdacWriter>(out_file, manager);
84 ldac_writer->notifySource(source);
86 table_writer = ldac_writer;
89 table_writer = std::make_shared<Euclid::Table::AsciiWriter>(out_file);
93 table_writer = std::make_shared<Euclid::Table::AsciiWriter>(
std::cout);
98 table_writer->addData(table);
101 catch (
const CCfits::FitsException &
e) {
T system_category(T...args)
void registerConfiguration()
FitsWriter & setHduName(const std::string &name)
std::unique_ptr< T > make_unique(Args &&...args)