lsst.astshim
19.0.0-3-ge74d124
|
Go to the documentation of this file.
22 #ifndef ASTSHIM_FITSCHAN_H
23 #define ASTSHIM_FITSCHAN_H
214 explicit FitsChan(
Stream &stream, std::string
const &options =
"");
366 std::complex<double> defval = {0, 0})
const;
387 FoundValue<std::string>
getFitsCN(std::string
const &name =
"", std::string defval =
"")
const;
406 FoundValue<double>
getFitsF(std::string
const &name =
"",
double defval = 0)
const;
425 FoundValue<int>
getFitsI(std::string
const &name =
"",
int defval = 0)
const;
444 FoundValue<bool>
getFitsL(std::string
const &name =
"",
bool defval =
false)
const;
467 FoundValue<std::string>
getFitsS(std::string
const &name =
"", std::string defval =
"")
const;
644 void putFits(std::string
const &card,
bool overwrite) {
645 astPutFits(
getRawPtr(), card.c_str(), overwrite);
696 void setFitsCF(std::string
const &name, std::complex<double> value, std::string
const &comment =
"",
697 bool overwrite =
false) {
699 astSetFitsCF(
getRawPtr(), name.c_str(),
reinterpret_cast<double(&)[2]
>(value), comment.c_str(),
725 void setFitsCM(std::string
const &comment,
bool overwrite =
false) {
726 astSetFitsCM(
getRawPtr(), comment.c_str(), overwrite);
756 void setFitsCN(std::string
const &name, std::string value, std::string
const &comment =
"",
757 bool overwrite =
false) {
758 astSetFitsCN(
getRawPtr(), name.c_str(), value.c_str(), comment.c_str(), overwrite);
786 void setFitsF(std::string
const &name,
double value, std::string
const &comment =
"",
787 bool overwrite =
false) {
788 astSetFitsF(
getRawPtr(), name.c_str(), value, comment.c_str(), overwrite);
816 void setFitsI(std::string
const &name,
int value, std::string
const &comment =
"",
817 bool overwrite =
false) {
818 astSetFitsI(
getRawPtr(), name.c_str(), value, comment.c_str(), overwrite);
846 void setFitsL(std::string
const &name,
bool value, std::string
const &comment =
"",
847 bool overwrite =
false) {
848 astSetFitsL(
getRawPtr(), name.c_str(), value, comment.c_str(), overwrite);
884 void setFitsS(std::string
const &name, std::string value, std::string
const &comment =
"",
885 bool overwrite =
false) {
886 astSetFitsS(
getRawPtr(), name.c_str(), value.c_str(), comment.c_str(), overwrite);
915 void setFitsU(std::string
const &name, std::string
const &comment =
"",
bool overwrite =
false) {
916 astSetFitsU(
getRawPtr(), name.c_str(), comment.c_str(), overwrite);
1039 auto *rawKeyMap =
reinterpret_cast<AstObject *
>(astGetTables(
getRawPtr()));
1042 throw std::runtime_error(
"getTables failed (returned a null keymap)");
1044 return Object::fromAstObject<KeyMap>(rawKeyMap,
true);
1051 explicit FitsChan(AstFitsChan *rawFitsChan) :
Channel(reinterpret_cast<AstChannel *>(rawFitsChan)) {
1053 std::ostringstream os;
1054 os <<
"this is a " <<
getClassName() <<
", which is not a FitsChan";
1055 throw std::invalid_argument(os.str());
std::shared_ptr< KeyMap > getTables() const
Definition: FitsChan.h:1038
FitsChan & operator=(FitsChan &&)=default
std::string getFitsAxisOrder() const
Definition: FitsChan.h:534
FitsChan & operator=(FitsChan const &)=delete
FoundValue< std::string > getFitsCN(std::string const &name="", std::string defval="") const
Definition: FitsChan.cc:69
FitsChan(AstFitsChan *rawFitsChan)
Definition: FitsChan.h:1051
@ NOVALUE
keyword is present, but has no value
void setDefB1950(bool defB1950)
Definition: FitsChan.h:939
bool getB(std::string const &attrib) const
Definition: Object.h:348
T value
The found value; ignore if found is false.
Definition: FitsChan.h:82
void setD(std::string const &attrib, double value)
Definition: Object.h:476
void purgeWcs()
Definition: FitsChan.h:595
void setIwc(bool iwcs)
Definition: FitsChan.h:967
void setSipReplace(bool replace)
Definition: FitsChan.h:978
void assertOK(AstObject *rawPtr1=nullptr, AstObject *rawPtr2=nullptr)
Definition: base.cc:49
void setB(std::string const &attrib, bool value)
Definition: Object.h:452
void emptyFits()
Definition: FitsChan.h:244
Definition: FitsChan.h:69
void setCarLin(bool cdMatrix)
Definition: FitsChan.h:923
void setPolyTan(int polytan)
Definition: FitsChan.h:989
std::string getCardComm() const
Definition: FitsChan.h:491
void setFitsU(std::string const &name, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:915
FoundValue< std::string > findFits(std::string const &name, bool inc)
Definition: FitsChan.cc:124
double getFitsTol() const
Definition: FitsChan.h:545
Definition: FitsChan.h:202
CardType getCardType() const
Definition: FitsChan.h:501
std::string getCardName() const
Definition: FitsChan.h:496
FoundValue(bool found, T const &value)
Definition: FitsChan.h:77
void setFitsCF(std::string const &name, std::complex< double > value, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:696
void clear(std::string const &attrib)
Definition: Object.h:119
std::vector< std::string > getAllCardNames()
Definition: FitsChan.cc:106
int getNCard() const
Definition: FitsChan.h:555
bool getCDMatrix() const
Definition: FitsChan.h:512
void retainFits()
Definition: FitsChan.h:674
FitsChan(Stream &stream, std::string const &options="")
Definition: FitsChan.cc:44
void setCard(int ind)
Definition: FitsChan.h:1036
FitsChan(FitsChan &&)=default
@ NOTYPE
card does not exist (card number invalid)
FoundValue< std::complex< double > > getFitsCF(std::string const &name="", std::complex< double > defval={0, 0}) const
Definition: FitsChan.cc:59
KeyMap warnings() const
Definition: Channel.cc:67
std::string getClassName() const
Definition: Object.h:139
void setFitsI(std::string const &name, int value, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:816
void writeFits()
Definition: FitsChan.h:1025
void setTabOK(int tabOK)
Definition: FitsChan.h:983
bool getCarLin() const
Definition: FitsChan.h:506
int getNKey() const
Definition: FitsChan.h:560
FoundValue< int > getFitsI(std::string const &name="", int defval=0) const
Definition: FitsChan.cc:84
int getI(std::string const &attrib) const
Definition: Object.h:400
void setFitsDigits(int digits)
Definition: FitsChan.h:957
FitsKeyState testFits(std::string const &name="") const
Definition: FitsChan.cc:132
bool getClean() const
Definition: FitsChan.h:517
void setFitsF(std::string const &name, double value, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:786
CardType
Definition: FitsChan.h:49
bool getSipReplace() const
Definition: FitsChan.h:571
FoundValue< std::string > getFitsS(std::string const &name="", std::string defval="") const
Definition: FitsChan.cc:98
bool found
Was the value found?
Definition: FitsChan.h:81
@ COMPLEXF
complex floating point
bool getDefB1950() const
Definition: FitsChan.h:522
FoundValue()
Default constructor: found false, value is default-constructed.
Definition: FitsChan.h:80
void putFits(std::string const &card, bool overwrite)
Definition: FitsChan.h:644
void setFitsS(std::string const &name, std::string value, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:884
void setFitsAxisOrder(std::string const &order)
Definition: FitsChan.h:951
@ COMPLEXI
complex integer
void delFits()
Definition: FitsChan.h:230
void setFitsCM(std::string const &comment, bool overwrite=false)
Definition: FitsChan.h:725
void setClean(bool clean)
Definition: FitsChan.h:934
void setWarnings(std::string const &warnings)
Definition: FitsChan.h:995
AST wrapper classes and functions.
Definition: attributes_channel.dox:1
std::string getEncoding() const
Definition: FitsChan.h:528
double getD(std::string const &attrib) const
Definition: Object.h:374
std::string getWarnings() const
Definition: FitsChan.h:588
void setC(std::string const &attrib, std::string const &value)
Definition: Object.h:464
FoundValue< double > getFitsF(std::string const &name="", double defval=0) const
Definition: FitsChan.cc:77
void putCards(std::string const &cards)
Definition: FitsChan.h:616
void readFits()
Definition: FitsChan.h:661
void setEncoding(std::string const &encoding)
Definition: FitsChan.h:945
virtual ~FitsChan()
Definition: FitsChan.cc:51
void setI(std::string const &attrib, int value)
Definition: Object.h:500
std::string const getC(std::string const &attrib) const
Definition: Object.h:361
std::string getAllWarnings() const
Definition: FitsChan.h:481
void showFits() const
Definition: FitsChan.h:1000
int getCard() const
Definition: FitsChan.h:486
void setCDMatrix(bool cdMatrix)
Definition: FitsChan.h:929
AstObject const * getRawPtr() const
Definition: Object.h:292
void setFitsL(std::string const &name, bool value, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:846
int getTabOK() const
Definition: FitsChan.h:576
FitsChan(FitsChan const &)=delete
FitsKeyState
Definition: FitsChan.h:40
void setSipOK(bool sipOK)
Definition: FitsChan.h:972
bool getSipOK() const
Definition: FitsChan.h:565
int getFitsDigits() const
Definition: FitsChan.h:540
int getPolyTan() const
Definition: FitsChan.h:582
void setFitsCN(std::string const &name, std::string value, std::string const &comment="", bool overwrite=false)
Definition: FitsChan.h:756
@ PRESENT
keyword is present and has a value
FoundValue< bool > getFitsL(std::string const &name="", bool defval=false) const
Definition: FitsChan.cc:91
void clearCard()
Rewind the card index to the beginning.
Definition: FitsChan.h:1031
void setFitsTol(double tol)
Definition: FitsChan.h:962
@ COMMENT
card is a comment-style card with no "=" (COMMENT, HISTORY, ...)
@ ABSENT
keyword is not present
bool getIwc() const
Definition: FitsChan.h:550